我正在通过Gradle执行TestNG测试。我想为默认的XMLReporter配置stackTraceOutputMethod的值。
这是我的Gradle任务
// runs test cases using TestNG framework
task runTests(type: JavaExec, dependsOn: classes) {
main = 'org.testng.TestNG'
args '-reporter org.testng.reporters.XMLReporter:stackTraceOutputMethod="0" testng.xml'
classpath configurations.runtime
systemProperties 'logDir': 'logs'
}
我收到以下错误:
15:30:36.343 [ERROR] [system.err] Unknown option: -reporter org.testng.reporters.XMLReporter:stackTraceOutputMethod=0 testng.xml 15:30:36.390 [QUIET] [system.out] Usage: [options] The XML suite files to run Options: -configfailurepolicy Configuration failure policy (skip or continue) -d Output directory -dataproviderthreadcount Number of threads to use when running data providers -excludegroups Comma-separated list of group names to exclude . . .
我想我提供Java args的方式不正确。
args '-reporter org.testng.reporters.XMLReporter:stackTraceOutputMethod="0" testng.xml'
有人可以告诉我这是做什么的正确方法吗?
由于
答案 0 :(得分:1)
传递多个args的正确方法是:
args '-reporter','....','testng.xml'
所以每个参数都有自己的字符串。
。而不是将它们全部空格分开。<强>更新强>
TestNG实际上很容易在Gradle中配置,我建议您使用以下内容:
task runTests(type: Test) {
useTestNG()
options {
listeners << '...'
}
}