取消SoapUI中的测试运行

时间:2018-12-17 13:12:04

标签: soapui

我目前有一个测试步骤,它调用另一个测试用例。在调用的测试用例中,我有一个带有条件if语句的常规脚本。如果满足某个条件,我想取消当前执行。我添加了以下两行;

testRunner.cancel(“未满足条件”); 返回

但是我发现,控制权被传递回了进行调用的测试用例,并且它继续执行该用例中其余的测试步骤。解决此问题的唯一方法是使用testRunner.fail(“”),但这并不是我真正想要的。

请任何人提供建议。非常感谢。

3 个答案:

答案 0 :(得分:1)

而不是在调用的步骤中编写 testRunner.cancel 。您可以从调用的 groovy 步骤

返回0/1。
return 0

根据调用函数0或1收到的值,您可以

testRunner.cancel("Cancelling the test run further steps as there is a failure")
return

答案 1 :(得分:1)

假设您正在测试用例上执行脚本run(),则可能会捕获该测试用例的结果,然后选择操作方式。

def result = testRunner.testCase.testSuite.getTestCaseByName("The Name Of Your Testcase").run(null, false);
def status = result.getStatus()
if (status == com.eviware.soapui.model.testsuite.TestRunner.Status.CANCELED) {
    testRunner.cancel("Condition not met"); 
    return;
}

答案 2 :(得分:0)

谢谢,这两个都是不错的选择,但是我通过“运行测试用例”选项调用了测试用例。我需要这样做(而不是使用常规脚本)来使其保持线程安全,因为我需要选择“运行主要TestCase(等待运行完成,线程安全”)选项。