如果有人可以向我提出以下问题的想法,那将对我有所帮助。 我有一个场景,我的脚本将逐行执行每个测试步骤,并且对于每个测试步骤,它将在html结果页面中报告传递和失败结果。 如果测试步骤结果通过,则将进入下一个测试步骤并继续进行。 类似地,对于失败的情况,它进入下一个测试步骤并执行它。 是否可以在脚本失败时停止脚本?
以下是示例大纲脚本
Call webEdit_check (“google”,”google”,”nametxtbox”,”xxxx”)
Call Link_check (strbrowser,strpage,strlink)
Call WebButton_check (strbrowser,strpage,strWebbutton)
因此,根据上面的脚本,它将调用webEdit函数并检查对象是否显示和可见,并将在webEdit文本框中输入值,如果满足所有条件,结果将被写为html结果中的pass。 完成上述功能后,现在将调用链接功能并启动执行。此外,它还会检查对象是否显示。如果成功,将进入下一步。让我们假设链接不可见,此函数的第二步失败,因此结果写为失败并开始执行第三个函数(调用WebButton_check)。我需要的是应该停止整个执行,因为之前的测试步骤失败了。是否有任何函数在后端运行,以停止执行?当测试步骤失败?我的问题有什么解决方案吗? (请注意我有多种情况,因此“退出测试/退出功能”不适用。) 功能是
webEdit_check
Function webEdit_check(strbrowser,strpage,strwebEdit,strvalue)
Testobject=Browser(strbrowser).Page(strpage).WebEdit(strlink)
If Testobject.exist(10) Then
blnvisible= testobject.getRoproperty(visible)
If blnvisible =True Then
Testobject.set strvalue
Environment.value(result)=pass
‘It will write result to html page
Call html (“test step is success”,Environment(result))
Else
Environment.value(result)=fail
Call html (“test step is fail”,Environment(result))
End If
Else
Environment.value(result)=fail
Call html (“test object is not visible fail”,Environment(result))
End If
End Function
webEdit_check
Function webEdit_check(strbrowser,strpage,strLink)
Testobject=Browser(strbrowser).Page(strpage).Link(strlink)
If Testobject.exist(10) Then
blnvisible= testobject.getRoproperty(visible)
If blnvisible =True Then
Testobject.click
Environment.value(result)=pass
‘It will write result to html page
Call html (“test step is success”,Environment(result))
Else
Environment.value(result)=fail
Call html (“test step is fail”,Environment(result))
End If
Else
Environment.value(result)=fail
Call html (“test object is not visible fail”,Environment(result))
End If
End Function
WebButton_check
Function WebButton_check(strbrowser,strpage,strWebButton)
Testobject=Browser(strbrowser).Page(strpage).WebButton(strWebButton)
If Testobject.exist(10) Then
blnvisible= testobject.getRoproperty(visible)
If blnvisible =True Then
Testobject.click
Environment.value(result)=pass
‘It will write result to html page
Call html (“test step is success”,Environment(result))
Else
Environment.value(result)=fail
Call html (“test step is fail”,Environment(result))
End If
Else
Environment.value(result)=fail
Call html (“test object is not visible fail”,Environment(result))
End If
End Function
(strverify,结果)
Function (strverify,Result)
If Environment(result)=pass Then
Td.write(<td(strverify)/>td<xxx><td(Result)/>td)
'(please note this is sample, which I typed, it’s just for concept)
Else
Td.write(<td(strverify)/>td<xxx><td(Result)/>td)
End If
End Function
如果可能的话,请发邮件(visitjaga@gmail.com)我在办公室的解决方案我限制访问外部网站。我不能马上检查。通过20天,我已经被这个问题所困扰。 感谢和放大器;问候 Jagadeesh Mani visitjaga@gmail.com
答案 0 :(得分:1)
可以试试这个
On Error Resume Next
Call Link_check (strbrowser,strpage,strlink)
Err.Raise 6 ' Raise an overflow error.
MsgBox "Error # " & CStr(Err.Number) & " " & Err.Description
Err.Clear ' Clear the error.
在上面如果函数Link_check导致错误,则执行不会向前移动。如果要执行下一个函数,请使用
On Error Resume Next
Call Link_check (strbrowser,strpage,strlink)
Err.Raise 6 ' Raise an overflow error.
MsgBox "Error # " & CStr(Err.Number) & " " & Err.Description
Err.Clear ' Clear the error.
On Error goto 0
WebButton_check
我希望这就是你所要求的。
答案 1 :(得分:0)
为了使我的问题更简单,我有15个场景,每个场景下面的每个场景都会被执行
Call WebEdit_check (“google”,”google”,”nametxtbox”,”xxxx”)
Call Link_check (strbrowser,strpage,strlink)
Call WebButton_check (strbrowser,strpage,strWebbutton)
所以如果在执行第3个场景时,下面的步骤功能失败
Call Link_check (strbrowser,strpage,strlink)
它将在html结果文件中写入失败,并且应该停止第3个场景执行,并且应该开始第4个场景的开始。此Err.Raise 6将引发用户预定义的错误消息
答案 2 :(得分:0)
for cnt i=0 to 15
Call WebEdit_check (“google”,”google”,”nametxtbox”,”xxxx”)
Error Resume Next
Call Link_check (strbrowser,strpage,strlink)'If the Error Occurs here then add On Error Resume Next above this statement
Call WebButton_check (strbrowser,strpage,strWebbutton)
Err.Clear 'This will clear the error.As,you want to keep this process to run for 15 times for each scenario.just add On Error goto 0
add On Error goto 0
Next
这可能会有所帮助