使用Gradle测试任务指定xmlpathinjar TestNG选项

时间:2017-08-31 00:51:54

标签: gradle testng

是否可以通过Gradle测试任务运行嵌入在JAR文件中的TestNG测试套件?

我的项目包括JARed捆绑的TestNG测试,这些测试具有嵌入式testng.xml文件,用于定义应在JAR中运行哪些测试。在运行TestNG测试时,Gradle是否可以引用此嵌入式XML?

从命令行我使用xmlpathinjar选项。

1 个答案:

答案 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