51Testing软件测试论坛

标题: General run error错误 [打印本页]

作者: lmj19851117    时间: 2012-11-13 17:34
标题: General run error错误
systemutil.Run "www.51testing.com"
Browser("micClass:=Browser").Navigate "bbs.51testing.com"
Browser("micClass:=Browser").Page("micClass:=Page").Sync:Wait 1
checkURL=TRIM(Browser("micClass:=Browser").Object. LocationURL)
msgbox checkURL
If checkURL="http://bbs.51testing.com/" Then
        Reporter.ReportEvent micPass,"step 1","pass"
else
    Reporter.ReportEvent micFail ,"step 1","faile"
End If
在这一段:checkURL=TRIM(Browser("micClass:=Browser").Object. LocationURL)
报General run error错误。请问什么地方错了啊?
作者: xjwldlover    时间: 2012-11-14 09:50
Browser("micClass:=Browser") 未找到对象,确定你当时只打开了一个浏览器。如果有多个,会找不到对象
作者: guoyang8013    时间: 2012-11-14 20:58
这种问题一般都是 对象后面的方法不对, Object应该没有LocationURL这个方法,或者LocationURl 为空
作者: xjwldlover    时间: 2012-11-15 09:45
这种问题一般都是 对象后面的方法不对, Object应该没有LocationURL这个方法,或者LocationURl 为空
guoyang8013 发表于 2012-11-14 20:58


首先,browser.object.LocationURL 这个属性是存在的。
其次,LZ已经对page进行了等待处理,sync,wait。虽然这中等待方法有时候不可靠,但相信LZ在这里已经运行过多次,loacationURL为空的可能性微乎其微。
再次,LocationURL为空也不应该报错。

那错误就应该出在browser().exists 上了。当返回False时,对象不存在,调用Object原对象必然报错,错误如LZ所示(我已试验过)。而qtpObj.exists返回false有两种情况:
①该对象不存在,即LZ打开浏览器失败,如果是这样,那么LZ的问题应该就是为什么打开网页失败,而不是该语句报错了,该猜想被否定。
②存在多个对象,这时qtpObj.exists也返回false,这种情况下,LZ应该是打开了多个页面。

如有理解歧义,请指正




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