51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 2055|回复: 6
打印 上一主题 下一主题

[求助] 关于 《精通QTP——自动化测试技术领航》书中202页的一个实例问题

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2013-8-29 11:25:16 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
代码如下:
'Step 1 ------------------------------------------------------------------------------------>
SystemUtil.Run "www.baidu.com"   '启动IE进入 指定网站
Browser("micClass:=Browser").Navigate "www.baidu.com"
Browser("micClass:=Browser").Page("micClass:=Page").Sync:Wait 1

checkURL=Trim(Browser("micClass:=Browser").Object.LocationURL)
If checkURL="http://www.baidu.com/" Then

Reporter.ReportEvent micPass,"Step 1","Passed"
Else


Reporter.ReportEvent micFail,"Step 1","Failed"
End If
'End of  checkpoint  <--------------------------------------------------------

'Step2--------------------------------------------------------------------------------->
' 通过<OperNewTab >方法打开一个新选项卡
Browser("micClass:=Browser").OpenNewTab:Wait 1
testHWND=Browser("name:=新建选项卡").GetROProperty("hwnd")
Browser("name:=新建选项卡").Navigate "www.baidu.com"


'Step 3 -------------------------------------------------------------------------------->
Browser("百度一下,你就知道").Page("百度一下,你就知道").Link("登录").Click
With Browser("百度一下,你就知道").Page("百度一下,你就知道")

.WebEdit("userName").Set "用户名"

.WebEdit("password").Set "密码"

.WebButton("登录").Click
End With
'checkpoint start ----------------------------------------->
oExist=Browser("百度一下,你就知道").Page("百度一下,你就知道").Link("用户名").Exist (3)
If oExist Then

Reporter.ReportEvent micPass,"Step3","Passed"
Else

Reporter.ReportEvent micFail,"Step3","Failed"
End If


'Step 4----------------------------------------------------------------------->
Browser("hwnd:="&testHWND).Close
Browser("micClass:=Browser").Refresh:Wait 1
'checkpoint start ----------------------------------------------------------->
oExist=Browser("百度一下,你就知道").Page("百度一下,你就知道").Link("用户名").Exist (3)
If oExist Then

Reporter.ReportEvent micPass,"Step4","Passed"
Else

Reporter.ReportEvent micFail,"Step4","Failed"
End If

原代码是进入51Testing进行测试的,因为网络不给力,进入51Testing很慢,所以改用Baidu进行测试 。

代码很简单,其中“用户名”、“密码”为百度的真实用户名和相应密码。对象抓取没问题。

问题是,step2中Browser("name:=新建选项卡").Navigate "www.baidu.com" 如红色标注所示,在新选项卡

中再次输入百度的地址跳转成功后,窗口重新定位到之前的选项卡,这里就有个疑问了,为什么它会重新定位到前一个Tab?  

由于跳转到前一个Tab,所以运行到step4的第一步 Browser("hwnd:="&testHWND).Close 找不到对像出错。

我想提问下,怎样定位不指定的浏览器上的Tab?
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
 楼主| 发表于 2013-8-30 21:16:32 | 只看该作者
我是菜鸟,这问题怎么没人答复呢,求各位大神指点啊
回复 支持 反对

使用道具 举报

该用户从未签到

3#
 楼主| 发表于 2013-8-30 21:18:21 | 只看该作者
怎么没人回答这问题呢,求大神们指点我这只菜鸟啊
回复 支持 反对

使用道具 举报

  • TA的每日心情
    无聊
    2020-12-8 11:20
  • 签到天数: 605 天

    连续签到: 1 天

    [LV.9]测试副司令

    4#
    发表于 2013-9-2 09:00:14 | 只看该作者
    骚年。。你的问题很多呢。。首先你打开的新tab有可能是没有名字的。。。这时候你去取句柄就会有问题了。。还有你如果你之前打开了一个百度页面。。。然后又打开了一个,据我所知2个页面会同步的吧。。。还有你一个描述,一会对象库,你确定确定对象库里有料啊。。。。思路不清晰。。。。。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    5#
     楼主| 发表于 2013-9-2 15:38:15 | 只看该作者
    回复 4# joykao


        多谢老鸟指教,我要多多学习下行才
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    6#
    发表于 2013-9-2 15:48:21 | 只看该作者
    你这个代码不能运行吧
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    7#
     楼主| 发表于 2013-9-2 18:08:18 | 只看该作者
    回复 6# xiechunli


        可以运行的,就是在step4第一步出错,提示找不到对像
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

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

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

    GMT+8, 2024-11-15 00:10 , Processed in 0.074722 second(s), 27 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

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