51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 2490|回复: 7
打印 上一主题 下一主题

[求助] 太奇怪了,第一次循环能找到对象,第二次循环就找不到了

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2007-4-24 15:09:13 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
源代码如下

Dim loadtimes()'每次的响应时间
ReDim loadtimes(clicktimes)
Dim avgtimes'平均响应时间
Dim i
Dim pagename
pagename="流程管理"
For i=0 To clicktimes-1
Browser("法律事务管理信息系统").Page("法律事务管理信息系统主页面").Frame("name:=leftFrame","html tag:=FRAME").Link("text:="&pagename).Click
wait(2)'等待页面加载完毕,避免接收不正确的加载时间
loadtimes(i)=Browser("法律事务管理信息系统").Page("法律事务管理信息系统主页面").Frame("topFrame").WebElement("loadtime").GetROProperty("innertext")
'MsgBox(Browser("法律事务管理信息系统").Page("法律事务管理信息系统主页面").Frame("topFrame").WebElement("loadtime").GetROProperty("innertext"))
Next

报错说找不到LInk的父对象Frame("lefname"),报错信息如下
Cannot find the "Link" object's parent "Frame" (class Frame). Verify that parent properties match an object currently displayed in your application.
Line (25): "Browser("法律事务管理信息系统").Page("法律事务管理信息系统主页面").Frame("name:=leftFrame","html tag:=FRAME").Link("text:="&pagename).Click".

但是非常奇怪的是,我在红色语句设置为断点,step by step运行,结果发现第一次循环时通过了,页面上的Link被点击了一下,但是当第二次循环时就报错,说找不到frame了,请问大家遇到过类似的情况吗?请大家指教了
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

8#
发表于 2007-11-20 22:29:57 | 只看该作者
好的方法阿
回复 支持 反对

使用道具 举报

该用户从未签到

7#
发表于 2007-11-20 17:45:45 | 只看该作者
又学习了一个东东
回复 支持 反对

使用道具 举报

该用户从未签到

6#
发表于 2007-11-20 16:42:38 | 只看该作者
我也遇到过,如果描述的属性不能唯一识别该对象,那么就会报错拉
回复 支持 反对

使用道具 举报

该用户从未签到

5#
发表于 2007-11-20 16:08:25 | 只看该作者
我遇到过类似的问题,将执行该语句的时间加唱就可以了.
回复 支持 反对

使用道具 举报

该用户从未签到

4#
 楼主| 发表于 2007-4-24 17:46:20 | 只看该作者
我刚才咨询了开发工程师,给leftframe添加了一个title属性,然后在object resposerity里给该对象添加了这个title属性及值就可以解决了

和开发工程师讨论了一下原因,有可能原因是这样的:
这个页面上有两个frame,name都是leftframe,第一次点击时有一个leftframe还没有出来,所以点击正确了,第二次点击时两个leftframe都出来了,所以QTP 不知道是哪个

但是俺还是觉得哪里有问题,解释太勉强,因为另外一个leftframe是在一个frame下面啊,object reposierty是层次结构,应该不会犯这种“识别错误”吧,还要继续研究一下
回复 支持 反对

使用道具 举报

该用户从未签到

3#
发表于 2007-4-24 16:52:07 | 只看该作者
这个应该跟description programming有关,试试把leftframe放在对象库中呢?
回复 支持 反对

使用道具 举报

该用户从未签到

2#
发表于 2007-4-24 16:23:26 | 只看该作者
我也遇到类似的问题
我把一个WebTable赋给一个变量 Set WebTableInstance=Browser("@@").Page("@@").WebTable("@@")
然后在一个Sub的For循环里使用这个变量,第一次循环正常,第二次循环就提示can't identify WebTable
如果我不用变量,直接用Browser("@@").Page("@@").WebTable("@@")的话每次循环就都可以

找了很久也不知道为什么,希望知道的老大帮助一下
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

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

GMT+8, 2024-11-27 13:13 , Processed in 0.071365 second(s), 28 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

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