关闭

【QTP编码小知识 二】

发表于:2008-9-27 15:09

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:假装不在    来源:51Testing软件测试论坛

#
QTP

  大家看看下面代码,代码是运行在谷歌的主页面,如果大家要试的话,大家同样也可以试试这代码的运行结果。

     Dim LinkDes
     Set LinkDes=description.Create()
     LinkDes("html tag").value="A"

     Set LinkObj=browser("Google").Page("Google").ChildObjects(LinkDes)
     For i=0 to LinkObj.count
        LinkObj(i).click
        browser("Google").Back
     Next

  代码运行完后,你会发现,原来在循环第2次连接点击的时候,抛出了一个“General run error”。这个是为什么会这样?之前也同样有论坛的朋友问到这样的问题,所以今天就在这里提到。

  问题是出在了对第一个连接点击后,做了返回操作所导致的,在第一次back的时候,LinkObj对象就已经丢失了,失效了。所以你在做第2次操作的时候,LinkObj(i)就已经找不到了,因此它会出错。

  正确的方法,这个也是我目前想到的,或者还有其它达人能做更好的方法出来。

     Dim LinkDes
     Set LinkDes=description.Create()
     LinkDes("html tag").value="A"

     Set LinkObj=browser("Google").Page("Google").ChildObjects(LinkDes)
     For i=0 to LinkObj.count
         Set LinkObj=browser("Google").Page("Google").ChildObjects(LinkDes)
        LinkObj(i).click
        browser("Google").Back
     Next

《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号