使用 maven 插件和 Java 重新运行失败的 SoapUI 测试



我们创建了一个maven Java应用程序,使用maven插件5.3运行SoapUI测试。这个项目我们在 Jenkins for Regression 中运行。要在修复后重新运行 SoapUI 项目的失败测试,我们必须为该项目再次运行 Jenkins 作业。 Jenkins 作业获取已修复的(从 SVN 存储库修复后更新的 proejct xml(测试,并再次重新运行所有通过和失败的测试。

有没有办法只在 Jenkins 中重新运行失败的测试?

詹金斯工作:

  1. 从SVN获取更新的SoapUI项目xml
  2. 使用自定义 jar(插件(运行测试

插件:

SoapUI.setSoapUICore(
  1. new StandaloneSoapUICore(true((;
  2. 创建 WSDL 项目
  3. WsdlTestCaseRunner wsRunner = project.getTestSuiteByName(testSuiteName(.getTestCaseByName(testCaseName(.run(new PropertiesMap((, false(;

我可以通过仅通过测试套件在循环中运行并使用 wrunner 运行它来做到这一点:

} else if (!testSuiteDisable && testSuitetoRerun != null( {

for (int i = 0; i < testSuitetoRerun.size(); i++) {
testSuiteName = project.getTestSuiteByName(testSuitetoRerun.get(i).trim().toString()).getName();
for (TestCase testCase : project.getTestSuiteByName(testSuitetoRerun.get(i).trim().toString()).getTestCaseList()) {
testCaseName = testCase.getName();
startTime = System.currentTimeMillis();
boolean testCaseDisable = project.getTestSuiteByName(testSuiteName).getTestCaseByName(testCaseName).isDisabled();
if (!testCaseDisable) {
System.out.println("Running Test Case : " + testCaseName);
wsRunner = project.getTestSuiteByName(testSuiteName).getTestCaseByName(testCaseName).run(new PropertiesMap(), false);

最新更新