是否可以在命令行中将参数传递给testng?
类似于maven的参数:mvn testname -Dparam1=value1 -Dparam2=value2
我知道如何使用和实际使用:
但是有一个参数应该在命令行中传递 - serverName
,例如:
java -cp "/opt/testng-6.8.jar:bin" org.testng.TestNG testng.xml -Dservername=srv1
原因:不希望每个testng-srv1.xml, testng-srv2.xml ...
X test suite
有几十个server
。
答案 0 :(得分:5)
java
将-Dservername=srv1
视为org.testng.TestNG
的命令行参数,而不是其中一个选项。您需要将-Dservername=srv1
移至“class”选项之前(即org.testng.TestNG
之前)。 e.g:
java -cp "/opt/testng-6.8.jar:bin" -Dservername=srv1 org.testng.TestNG testng.xml
答案 1 :(得分:1)
您可能必须将-Dservername=srv1
部分移到org.testng.TestNG
之前。请尝试以下操作:
java -cp "blabla" -DparameterName=value org.testng.TestNG testng.xml
此外,我建议不要在您的testng.xml文件中添加此参数。否则,它将覆盖此值。