如何运行带有故障安全的TestNG套件而无需解压缩依赖jar?

我想使用包含在依赖jar中的TestNG套件文件来执行集成测试。

这里将讨论设置pom.xml的详细信息

这是我目前拥有的pom文件。 问题在于我需要定义套件文件的部分:

  4.0.0 test test-runner 1.0.0-SNAPSHOT   ${test.library.groupId} ${test.library.artifactId} ${test.library.version}   ${test.library.groupId} ${test.library.artifactId} ${test.library.version} tests      org.apache.maven.plugins maven-failsafe-plugin 2.18    integration-test verify      ${test.suite}.xml <!-- <<   ${test.library.groupId}:${test.library.artifactId}       

可以通过为Jenkins作业中的参数提供值来执行测试:

  -Dtest.library.groupId=com.example.test -Dtest.library.artifactId=example -Dtest.library.version=2.0.1 -Dtest.suite=smoke 

如果套件文件在本地可用,这一切都可以正常工作,但我想使它只能在jar中使用套件文件(与测试类相同)。 没有拆包。

所以问题是:如何定义套件文件的位置(包含在依赖项中)?

这是有问题的部分:

 [whatComesHere?]${test.suite}.xml 

如何在测试jar中包含的套件文件中指出failsafe / surefire? 或者这是不可能的,我只需要为了能够运行特定的套件文件而解压缩jar?

使用surefire插件在配置部分中指定以下属性:

  org.apache.maven.plugins maven-surefire-plugin ${version}    testjar your.test.jar    xmlpathinjar resources/testng.xml