继续使用Java 1.8后,启动Web启动应用程序时会显示安全警告。
UFT可以通过对象间谍查看此Java对话框的所有对象。所以我编写了消息检查和确认块:
If JavaDialog("label:=Security Warning").Exist(40) Then
JavaDialog("label:=Security Warning").JavaCheckBox("text:=I accept the risk and want to run this application\.").Set True
JavaDialog("label:=Security Warning").JavaButton("label:=Run")
End If
但是在测试执行期间,即使等待JavaDialog("label:=Security Warning")
存在的40秒也会立即返回False
,而不会等待。
这种行为的原因是什么?怎么解决?
答案 0 :(得分:0)
可能在后台第1行(if if statment)中抛出错误。并且由于文件>中的“继续下一步”选项设置>运行,UFT正在进行下一步并向您返回False。
尝试在if语句之外移动Exist()。
strExist = JavaDialog("label:=Security Warning").Exist(40)
If strExist Then
JavaDialog("label:=Security Warning").JavaCheckBox("text:=I accept the risk and want to run this application\.").Set True
JavaDialog("label:=Security Warning").JavaButton("label:=Run")
End If
答案 1 :(得分:0)
如果UFT没有等待40秒,那么该行可能会产生错误。
我可以毫无问题地执行以下代码
如果是JavaDialog(“label:= Security Information”)。存在(40)则
Msgbox "Test"
结束如果
你可以做些什么来调试它
1)检查UFT的运行结果报告,该报告将由UFT生成错误。这将有助于您识别问题。
2)正如Yogesh建议的那样,关闭所有错误设置并在脚本中注释任何On error resume next语句。这将确保UFT显示错误而不是跳过该行。