我在TestNG中有很多测试套件.这些是
XML文件.从maven运行集成测试时,我想要能够选择多个XML套件.
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <configuration> <suiteXmlFiles> <suiteXmlFile>${pathToMySuiteFile_1}</suiteXmlFile> <suiteXmlFile>${pathToMySuiteFile_1}</suiteXmlFile> </suiteXmlFiles> </configuration> </plugin>
这个解决方案有一些限制.我只能改变我在pom.xml中定义的测试套件的路径.所以在我的例子中,它总是必须是两个文件.我不能跑,可以说,5套或只有一个.
有没有办法在pom.xml中参数化整个部分“suiteXmlFiles”?
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <configuration> <suiteXmlFiles> ${multiple_paths_ToMySuiteFiles} </suiteXmlFiles> </configuration> </plugin>
运行与给定测试组匹配的所有内容对我来说不是一个选择:
我不想加载我拥有的所有套件,然后使用TestNG套件中的组运行所选的测试.原因是在运行具有组过滤器的所有测试套件后生成的报告与仅运行所选测试套件的报告不同.
解决方法
根据
User Property的suiteXmlFiles可以使用:
mvn test -Dsurefire.suiteXmlFiles=test1.xml,test2.xml