51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

查看: 2699|回复: 15
打印 上一主题 下一主题

[原创] 为什么我的link不循环啊!

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2009-3-10 15:27:44 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
Dim i,b
Browser("百度一下,你就知道").Page("百度一下,你就知道").WebEdit("wd").Set "CCTV"
Browser("百度一下,你就知道").Page("百度一下,你就知道").WebButton("百度一下").Click
For i=1 to 2
    Select Case i
       Case 1 b="CCTV.com"
       Case 2 b="2008奥运会"
     End Select
Browser("百度一下,你就知道").Page("百度搜索_CCTV").Link("中国中央电视台 CCTV.com").SetTOProperty "text","b"
Browser("百度一下,你就知道").Page("百度搜索_CCTV").Link("中国中央电视台 CCTV.com").Click
Browser("中国中央电视台 CCTV.com").Page("中国中央电视台 CCTV.com").Sync
Browser("中国中央电视台 CCTV.com").Close
Next
Browser("百度一下,你就知道").Page("百度搜索_CCTV").Sync
Browser("百度一下,你就知道").Close
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2009-3-10 16:50:25 | 只看该作者
你可以先把这句注释掉:Browser("百度一下,你就知道").Page("百度搜索_CCTV").Link("中国中央电视台 CCTV.com").SetTOProperty "text","b"
再执行一遍看是否有循环两次。
回复 支持 反对

使用道具 举报

该用户从未签到

3#
发表于 2009-3-10 17:27:41 | 只看该作者
估计你的脚本是执行了两次循环,但是因为点击的是同一个对象所以你感觉只循环了一次,你可以在循环体中加上一句:
msgbox i
然后再运行,就可以清楚的知道的脚本到底循环了几次了。
回复 支持 反对

使用道具 举报

该用户从未签到

4#
 楼主| 发表于 2009-3-10 18:36:47 | 只看该作者
msgbox是循环了2次,但每次都点的是第一个link的页面啊,
       Case 1 b="中国中央电视台 CCTV.com"
大侠们,如何修改?好像这里的第二句有问题,打开的都是第一次的页面,但我又不知如何修改,哪位给提示一下啊!
----------------------------------
Browser("百度一下,你就知道").Page("百度搜索_CCTV").Link("中国中央电视台 CCTV.com").SetTOProperty "text","b"
Browser("百度一下,你就知道").Page("百度搜索_CCTV").Link("中国中央电视台 CCTV.com").Click
-----------------------------
回复 支持 反对

使用道具 举报

该用户从未签到

5#
 楼主| 发表于 2009-3-10 18:38:59 | 只看该作者

谢谢,终于有回复了

高手帮帮忙,别沉下去了。
新手问的很初级的问题,大家不要见笑,没有实例,都要自己一步步来
回复 支持 反对

使用道具 举报

该用户从未签到

6#
发表于 2009-3-10 19:16:20 | 只看该作者
Browser("百度一下,你就知道").Page("百度搜索_CCTV").Link("中国中央电视台 CCTV.com").SetTOProperty "text","b"

msgbox Browser("百度一下,你就知道").Page("百度搜索_CCTV").Link("中国中央电视台 CCTV.com").GetTOProperty("text")
msgbox Browser("百度一下,你就知道").Page("百度搜索_CCTV").Link("中国中央电视台 CCTV.com").GetROProperty("text")
Browser("百度一下,你就知道").Page("百度搜索_CCTV").Link("中国中央电视台 CCTV.com").Click

中间加上这个看下两次的值是否一样。
回复 支持 反对

使用道具 举报

该用户从未签到

7#
 楼主| 发表于 2009-3-11 09:35:39 | 只看该作者

谢谢,终于有回复了

msgbox Browser("百度一下,你就知道").Page("百度搜索_CCTV").Link("中国中央电视台 CCTV.com").GetTOProperty("text")
msgbox Browser("百度一下,你就知道").Page("百度搜索_CCTV").Link("中国中央电视台 CCTV.com").GetROProperty("text")
加了二句后,二次的值都是一样的,第一次为b, 第二次显示“中国中央电视台 CCTV.com”,应该如何改啊?怎么才能正确循环呢?
回复 支持 反对

使用道具 举报

该用户从未签到

8#
发表于 2009-3-11 09:52:53 | 只看该作者
呵呵,我也有点看晕了,请 LZ把结果贴出来:
比如:
   1,
       msgbox :
      msgbox :
   2,
      msgbox:
      msgbox:
1,2 分别代表第一和第二次的循环。呵呵。
回复 支持 反对

使用道具 举报

该用户从未签到

9#
 楼主| 发表于 2009-3-11 11:52:54 | 只看该作者

结果如下

Dim i,b
Browser("百度一下,你就知道").Page("百度一下,你就知道").WebEdit("wd").Set "CCTV"
Browser("百度一下,你就知道").Page("百度一下,你就知道").WebButton("百度一下").Click
For i=1 to 2
    Select Case i
       Case 1 b="中国中央电视台 CCTV.com"
       Case 2 b="2008奥运会"
     End Select
Browser("百度一下,你就知道").Page("百度搜索_CCTV").Link("中国中央电视台 CCTV.com").SetTOProperty "text","b"
msgbox Browser("百度一下,你就知道").Page("百度搜索_CCTV").Link("中国中央电视台 CCTV.com").GetTOProperty("text")
msgbox Browser("百度一下,你就知道").Page("百度搜索_CCTV").Link("中国中央电视台 CCTV.com").GetROProperty("text")
Browser("百度一下,你就知道").Page("百度搜索_CCTV").Link("中国中央电视台 CCTV.com").Click
Browser("中国中央电视台 CCTV.com").Page("中国中央电视台 CCTV.com").Sync
Browser("中国中央电视台 CCTV.com").Close
Next
--------------------------------

1,
   msgbox : b
      msgbox :中国中央电视台 CCTV.com
   2,
      msgbox:b
      msgbox:中国中央电视台 CCTV.com,/////这里应该是“2008奥运会”才对的
------------------------------------

我的操作步骤是,1、在www.baidu.com搜索框内输入CCTV,点击搜索按钮
2、在查询到的结果页面,有很多行。其中我打开第一个链接名称为“中国中央电视台 CCTV.com”,然后关闭这个网页,再关闭百度搜索。
3、我把CCTV查询后结果页面,搜索结果标题设置为参数化,让其模拟打开第二个链接,名称是“2008奥运会”
回复 支持 反对

使用道具 举报

该用户从未签到

10#
发表于 2009-3-11 13:27:27 | 只看该作者
Browser("百度一下,你就知道").Page("百度搜索_CCTV").Link("中国中央电视台 CCTV.com").SetTOProperty "text","b"

把SetTOProperty "text","b" 改成 SetTOProperty "text",b
试试看。
回复 支持 反对

使用道具 举报

该用户从未签到

11#
 楼主| 发表于 2009-3-11 14:06:54 | 只看该作者
Browser("百度一下,你就知道").Page("百度搜索_CCTV").Link("中国中央电视台 CCTV.com").SetTOProperty "text","b"

把SetTOProperty "text","b" 改成 SetTOProperty "text",b
试试看。
----------------------------------------------------------------------
现在可以打开第二个链接了,但是窗口不能关闭,关闭也要参数化的吧
怎么参数化关闭窗口啊
回复 支持 反对

使用道具 举报

该用户从未签到

12#
发表于 2009-3-11 14:18:21 | 只看该作者
Browser("中国中央电视台 CCTV.com").Close  改成 Browser("micclass:=Browser").close
试试。
回复 支持 反对

使用道具 举报

该用户从未签到

13#
 楼主| 发表于 2009-3-11 15:27:20 | 只看该作者

mklodoss,你好

我把这里改成这样
For i=1 to 2
    Select Case i
       Case 1 b="中国中央电视台 CCTV.com"
       Case 2 b="2008奥运会"
     End Select
Browser("百度一下,你就知道").Page("百度搜索_CCTV").Link("中国中央电视台 CCTV.com").SetTOProperty "text",b
msgbox Browser("百度一下,你就知道").Page("百度搜索_CCTV").Link("中国中央电视台 CCTV.com").GetTOProperty("text")
msgbox Browser("百度一下,你就知道").Page("百度搜索_CCTV").Link("中国中央电视台 CCTV.com").GetROProperty("text")
Browser("百度一下,你就知道").Page("百度搜索_CCTV").Link("中国中央电视台 CCTV.com").Click
Browser("中国中央电视台 CCTV.com").Page("中国中央电视台 CCTV.com").Sync
Browser("micclass:=Browser").close
Next
------
最后运行出错啦,Browser("micclass:=Browser").close这里有错
回复 支持 反对

使用道具 举报

该用户从未签到

14#
发表于 2009-3-11 18:36:28 | 只看该作者
那是因为你的IE开了不止一个。
Browser("micclass:=Browser", "index:=0").close
还有你应该多看看错误的信息,Qtp的提示还是很到位的,比如找到不止一个对象,或者对象找不到,也就那么几个,这样下次自己就知道问题出在那了。这个论坛上有很多高手写的精华贴,可以多看看,呵呵,个人的一点建议。
回复 支持 反对

使用道具 举报

该用户从未签到

15#
 楼主| 发表于 2009-3-11 19:14:11 | 只看该作者

good

Browser("title:=" & b).Page("title:=" & b).Sync
Browser("title:=" & b).close
问题终于解决了,今天突然好像开了窍了,还是基础知识没掌握,谢谢mklodoss,dreamever二位的耐心指导!
以后自己得多弄懂基础知识,不能随便问这些小儿科的问题了
回复 支持 反对

使用道具 举报

该用户从未签到

16#
 楼主| 发表于 2009-3-11 19:16:23 | 只看该作者
有时看别人贴子,不实践还是不知怎么回事,这样亲自操作一遍就懂了,而且我又试了另外几种方面,调试几下很快就可以了。
又学会了调试方面和几种常用变量的使用。今天有收获了
回复 支持 反对

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-4-27 17:26 , Processed in 0.084745 second(s), 27 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表