作者:梁永基
时间: 2014/1/21
QTP 检查对象的存在的优化
譬如我们平时做一个登陆的时候,登陆成功可能会弹出 显示 “登陆成功” 的对话框,检查对话框是否存在
我们把这个对象看做 loginDialog对象
Set loginDialog = Browser("").Page("").WebElement("登陆成功")
通常我们会这样做,直接赋上需要等待的时间,譬如我们登陆5秒
loginDialog.Exist(5) 来判断这个登陆成功的信息框是否存在,5秒是等待时间!5秒内出现则返回True,否则返回False
因为我们不知道需要等待的时间有多长,因为系统的反应时间是不能准确估算的。所以在这个等待的时间我们是浪费的!
那么有什么办法可以让我们优化一下呢?
答案是有的!
我们可以写一个While循环来控制
Dim count
count = 0 '这里主要大概计算秒数
While ((not loginDialog.Exist(1)) and count < 5)
count = count + 1
Wend
上面的这段While循环代码大概意思是, 每一秒中去看看 “登陆成功”的对话框是否存在, 存在的话,就直接跳出,如果5秒后,还是没有存在的话,就可以说明等待超时了
那么这样,如果对象存在情况,我们检查的时间是 1~5秒内,那么比我们之前把时间写死这样的做法,效率得到了提高。 使我们的脚本执行效率也得到了提高
我们也可以封装一个函数或者变成关键字,然后整合到框架中!