51Testing软件测试论坛

标题: web页面中,判断对象是否存在以及跳出For循环的问题 [打印本页]

作者: maplee    时间: 2013-7-5 13:43
标题: web页面中,判断对象是否存在以及跳出For循环的问题
本帖最后由 maplee 于 2013-7-5 14:21 编辑

先描述现象:
==================
有两个web页面,A 和 B
A页面是“证书认证错误的页面”,如下图
[attach]86137[/attach]

在A页面中,点击link<继续浏览此网站>,
有2种可能:
1、是继续显示证书错误的A页面(有可能连续2、3次都是如此,但最多也不会超过10次)
2、是直接进入正常的B页面

B页面则是正常的注册账户页面
==================

再说需求:
打开页面以后,自动判断是否是证书错误的A页面,如果是,则点击link<继续浏览此网站>,
然后继续判断,如果仍然是A页面,继续点击link<继续浏览此网站>,直到出现B页面为止。
==================

针对以上问题,我写了如下脚本:
  1. Option Explicit
  2. Dim oExist
  3. oExist = Browser("口座开设").Page("证书错误").Link("继续浏览此网站").Exist(1)
  4. Certi_Confirm
  5.        
  6. Sub Certi_Confirm
  7. Dim i
  8. For i = 1 To 10
  9. If oExist Then
  10. Browser("口座开设").Page("证书错误").Link("继续浏览此网站").Click
  11. Else
  12. Browser("口座开设").Page("业务种类选择").Link("口座开设").Click
  13. Exit for
  14. End If
  15. Next
  16. End Sub
复制代码
但是现在有两个问题,
第一个问题是脚本走到Else部分以后,无法跳出FOR循环,又开始继续循环了。。
另一个问题是第二遍循环的时候,即使在正常页面B,也会判断为oExist是存在的。
这是怎么回事儿呢?求版主、各位大神指点下。
作者: 让测试飞起来    时间: 2013-7-5 14:14
这个很好!、
作者: maplee    时间: 2013-7-5 15:08
本帖最后由 maplee 于 2013-7-5 15:40 编辑

发错了,编辑掉~
作者: maplee    时间: 2013-7-5 15:12
本帖最后由 maplee 于 2013-7-5 15:40 编辑

发错了,编辑掉~
作者: joykao    时间: 2013-7-5 17:41
为什么要用for 循环?这种问题是证书问题,有好多方法可以解决,可以安装证书,当然也可以通过添加测试恢复场景来处理这一情况,当这个页面出现时直接点击continue link,然后把场景关联起来。。。。不必太纠结
作者: lirenlong_9990    时间: 2013-7-8 11:56
对于这种不可预知的 用场景恢复 还是不错的哈
我怎么没有想到呢
支持楼上




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