如果其中一个http API HTTP状态代码不是200,如何停止testRunner

时间:2015-11-26 15:44:48

标签: groovy soapui

我在CI机器上运行我的soapUI自动化解决方案,由testRunner.sh调用。

被调用如下:

/test

如果某个API http状态代码不是200,我想停止整个过程。

有什么想法吗? 目前,我能做到这一点的唯一方法是调用最后一个测试套件" FinalReport"并禁用正在运行的测试套件中当前可用的其余测试脚本。

代码如下:

/Projects/SoapUI-5.2.1/bin/testrunner.sh ~/sautomation_work/Automation_Project.xml

1 个答案:

答案 0 :(得分:0)

我找到了一种退出当前soapUI执行的方法,以防其中一个关键测试失败。 这个想法是禁用剩余的测试套件和测试用例,并执行一个" final"报告测试执行失败的测试套件。

我的代码如下:

import com.eviware.soapui.impl.wsdl.WsdlProject;
import com.eviware.soapui.impl.wsdl.WsdlTestSuite;
import com.eviware.soapui.impl.wsdl.testcase.WsdlTestCase;

WsdlTestSuite testSuite = context.testCase.testSuite;
WsdlProject project     = context.testCase.getProject();

// Disable remaining test cases in the current test suite.
for (WsdlTestCase testCase in testSuite.testCaseList) {
    testCase.setDisabled(true);
}

// Disable rest of the test suites
for (WsdlTestSuite testSuiteName in project.testSuiteList) {
    testSuiteName.setDisabled(testSuiteName.name != "LastTestSuite");
}