如何参数化 Maven surefire 插件,以便我可以选择要运行的 TestNG 套件
2022-09-03 18:03:28
我在TestNG中有很多测试套件。这些是 XML 文件。我希望能够在从 maven 运行集成测试时选择多个 XML 套件。
目前,我可以将套件文件添加到pom.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中参数化整个部分“suiteXmlFiles.xml?
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<suiteXmlFiles>
${multiple_paths_ToMySuiteFiles}
</suiteXmlFiles>
</configuration>
</plugin>
运行与给定测试组匹配的所有内容对我来说不是一个选择:我不想加载我拥有的所有套件,然后使用TestNG套件中的组仅运行选定的测试。原因是,在运行具有组筛选器的所有测试套件后生成的报告与仅运行所选测试套件时生成的报告不同。