我希望在现有的SoapUI项目中自动创建测试步骤。每个测试步骤都是从保存在单个文件中的记录SOAP请求中加载的。每个测试步骤都可以具有相同的断言,从另一个测试步骤复制。
我想我可以在安装脚本中使用Groovy做一些事情。我还可以使用其他任何选项吗?
答案 0 :(得分:1)
是的,使用Groovy的WsdlTestStepFactory。
答案 1 :(得分:1)
有许多不同的测试步骤。对于groovy测试步骤,您可以尝试:
public String createGroovyScriptTestStep() {
try {
String projectName = "C:\\YourProjectName.xml";
File projectFile = new File(projectName);
WsdlProjectPro project = new WsdlProjectPro(projectName);
if (!projectFile.exists()) {
return "no_project_already_exists";
}
WsdlTestSuite testSuite = project
.getTestSuiteByName("TestSuiteName");
if (testSuite == null) {
return "testsuite does not exist";
} else {
WsdlTestCase testCase = testSuite
.getTestCaseByName("TestCaseName");
if (testCase == null) {
return "testcase does not exist";
} else {
if (testCase.getTestStepByName("StepName") != null) {
return "teststep_already_exists";
}
WsdlGroovyScriptTestStep testStep = (WsdlGroovyScriptTestStep) testCase
.addTestStep(GroovyScriptStepFactory.GROOVY_TYPE,
"StepName");
testStep.setDescription("Description");
testStep.setScript("System.out.println('Hi')");
project.saveIn(projectFile);
return "teststep_successfully_created";
}
}
} catch (Exception ex) {
ex.printStackTrace();
}
}
您需要关注Maven家属:
<dependency>
<groupId>com.github.redfish4ktc.soapui</groupId>
<artifactId>maven-soapui-extension-plugin</artifactId>
<version>4.6.4.1</version>
</dependency>
<dependency>
<groupId>com.fifesoft</groupId>
<artifactId>rsyntaxtextarea</artifactId>
<version>1.4.1</version>
</dependency>