是否可以通过Gradle测试任务运行嵌入在JAR文件中的TestNG测试套件?
我的项目包括JARed捆绑的TestNG测试,这些测试具有嵌入式testng.xml文件,用于定义应在JAR中运行哪些测试。在运行TestNG测试时,Gradle是否可以引用此嵌入式XML?
从命令行我使用xmlpathinjar选项。
答案 0 :(得分:1)
我不认为可以使用Gradle TestNG任务完成。我无法在TestNGOptions
中找到任何此类支持而不是使用
test{
useTestNG()
}
你可以尝试浏览SO How can I tell Gradle to use my testng.xml file for Test Classes and Ordering?上的这篇文章,也许可以采用此处详述的方法https://stackoverflow.com/a/28868416
但是当您使用自定义Gradle任务运行TestNG测试时,请确保添加对ExitCodeListener
这是一个样本
task ('myTask', type: JavaExec) {
main = 'org.testng.TestNG'
classpath = sourceSets.main.runtimeClasspath + sourceSets.test.runtimeClasspath
args = ["-xmlpathinjar", "suites/mysuite.xml", "-listener", "org.testng.TestNG\$ExitCodeListener"]
}
有关ExitCodeListener
需要被引用的原因的详细信息,请here