有没有办法从testSuite(用soapUI制作)通过jenkins启动特定的测试用例?

时间:2014-06-23 10:39:07

标签: maven jenkins maven-plugin soapui jenkins-plugins

你可以在标题中看到我有一个问题!我正在寻找一种在testSuite中启动特定testCase的方法。 testSuite是由柔软的SoapUi制作的。一个testSuite是一个包含多个测试用例的xml文件。通过Jenkins软件,我想执行一个作业来尝试我的xml脚本。为此,我使用maven-plugin但我的问题是我不知道如何指定执行一个或两个测试用例而不是每次都执行。例如,如果我执行我的脚本一次并且所有testCase成功除了2失败,我怎么能用相同的脚本执行只有两个失败的测试用例。

亲切

3 个答案:

答案 0 :(得分:2)

因此,为了处理您的场景,您可以在SOAP UI测试用例中实现通常称为“标记”的内容。

让我们讨论一下像

这样的例子

场景1:

  • 您可以添加testCase属性'Runmode',其值可能类似于'Y'或'N'。

  • 同样会有一个Project Property'testExecution'包含要执行的tescases。

  • 现在,在运行Jenkins作业时,您可以将测试用例列表作为参数传递给maven SOAP UI项目,如-DtestExecution =“testcase1,testcase4”。

  • 首先,在项目的SetUp脚本中,从testExecution属性解析这些测试用例,并为测试用例分配RunMode。如果用户没有提及任何测试用例,也要处理这种情况,在这种情况下,每个测试用例都必须运行。

场景2:

  • 您可以指定一些标签,例如“SmokeTests”,“回归”,“整合测试”。
  • 并添加项目属性,例如'TestExecution'。
  • 同样,您可以从maven参数传递其值,例如-DTestExecution ='SmokeTest'
  • 首先,您将为每个测试案例定义属性“TAG”,其价值可能是“Smoke Test”,“集成测试”等。
  • 因此,基于TestExecution的值,您可以控制测试用例的执行。

希望这会对你有所帮助。

答案 1 :(得分:2)

在这一方上迟到了,但是您可以通过以下方式执行此操作 - 在Pom.xml中添加以下条目:

                <configuration>
                  <reportName>SoapUI report</reportName>
                  <projectFile>name-of-project-file</projectFile>
                  <outputFolder>${project.build.directory}/reports/</outputFolder>
                  <junitReport>true</junitReport>
                  <exportAll>false</exportAll>
                  <printReport>true</printReport>
                  <testSuite>${testSuite}</testSuite>
                  <testCase>${testCase}</testCase>
                  <projectProperties>
                    <projectProperty>Environment=${Environment} /projectProperty>
                  </projectProperties>
                </configuration>

然后可以使用

在命令行中引用TestSuite
mvn test -DtestSuite="name of your test suite" 

或者,如果要指定测试用例的名称:

mvn test -DtestCase="name of your test case"

或者如果你想同时指定:

mvn test -DtestCase="names of your test case" -DtestSuite="name of your test suite"

<强>更新

我发现如果要运行特定的测试用例,则需要指定-DtestSuite

答案 2 :(得分:1)

因此,在这种情况下,您可以使用maven插件来控制功能测试。

插件设置

测试设置

projectFile:指定要使用的SoapUI项目文件的名称,默认值为 $ {pom.artifactId} -soapui-project.xml中

testSuite ###:指定要运行的TestSuite的名称

testCase ###:指定要运行的TestCase的名称

端点:覆盖要由任何TestRequests

调用的服务端点

host:覆盖要由任何TestRequests

调用的目标主机:端口

username:覆盖任何TestRequests运行所使用的用户名

password:覆盖运行的任何TestRequests使用的密码 domain:覆盖任何TestRequests运行所使用的域

printReport:控制是否应将小型测试报告打印到控制台(true / false)

outputFolder:设置将结果/报告保存到

的文件夹

junitReport:打开JUnit-reports的创建,(true / false)

exportAll:控制是否应导出所有测试请求(默认只导出错误),  (真假) settingsFile:指定要使用的SoapUI设置文件

wssPasswordType:指定WSS密码类型

project.password:指定加密项目的密码

settingsFile.password:指定加密设置文件的密码

globalProperties:设置全局属性

projectProperties:设置项目属性

saveAfterRun:运行后保存项目文件

testFailIgnore:忽略失败的测试。

reportFormat:设置已创建报告的格式。仅限专业。

reportName:设置要创建的报告。仅限专业。

coverage:将输出设置为包括Coverage HTML报告。仅限专业。

environment:设置活动环境。仅限专业。