51Testing软件测试论坛

标题: 太奇怪了,第一次循环能找到对象,第二次循环就找不到了 [打印本页]

作者: kursk    时间: 2007-4-24 15:09
标题: 太奇怪了,第一次循环能找到对象,第二次循环就找不到了
源代码如下

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了,请问大家遇到过类似的情况吗?请大家指教了
作者: dcyan    时间: 2007-4-24 16:23
我也遇到类似的问题
我把一个WebTable赋给一个变量 Set WebTableInstance=Browser("@@").Page("@@").WebTable("@@")
然后在一个Sub的For循环里使用这个变量,第一次循环正常,第二次循环就提示can't identify WebTable
如果我不用变量,直接用Browser("@@").Page("@@").WebTable("@@")的话每次循环就都可以

找了很久也不知道为什么,希望知道的老大帮助一下
作者: danmy    时间: 2007-4-24 16:52
这个应该跟description programming有关,试试把leftframe放在对象库中呢?
作者: kursk    时间: 2007-4-24 17:46
我刚才咨询了开发工程师,给leftframe添加了一个title属性,然后在object resposerity里给该对象添加了这个title属性及值就可以解决了

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

但是俺还是觉得哪里有问题,解释太勉强,因为另外一个leftframe是在一个frame下面啊,object reposierty是层次结构,应该不会犯这种“识别错误”吧,还要继续研究一下
作者: junlingliu    时间: 2007-11-20 16:08
我遇到过类似的问题,将执行该语句的时间加唱就可以了.
作者: 杀人跳舞    时间: 2007-11-20 16:42
我也遇到过,如果描述的属性不能唯一识别该对象,那么就会报错拉
作者: caodongjian    时间: 2007-11-20 17:45
又学习了一个东东
作者: jifeng    时间: 2007-11-20 22:29
好的方法阿




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2