如何在命令行中将参数传递给testng?

Iva*_*nko 2 java testng

是否可以在命令行中将参数传递给testng?

像maven的参数: mvn testname -Dparam1=value1 -Dparam2=value2

我知道如何使用和实际使用:

  • testng.xml(参数和测试类,要执行的方法)
  • DataProvider(传递测试数据)

但是有一个参数应该在命令行中传递 - serverName例如:

java -cp "/opt/testng-6.8.jar:bin" org.testng.TestNG testng.xml -Dservername=srv1
Run Code Online (Sandbox Code Playgroud)

原因:不希望testng-srv1.xml, testng-srv2.xml ...每个test suiteX 都有几十个server.

mfu*_*n26 5

java被处理-Dservername=srv1作为一个命令行参数org.testng.TestNG,而不是作为它的一个选项.你需要-Dservername=srv1在"class"选项之前(即之前org.testng.TestNG)移动.例如:

java -cp "/opt/testng-6.8.jar:bin" -Dservername=srv1 org.testng.TestNG testng.xml
Run Code Online (Sandbox Code Playgroud)