我有 TestNG、Maven 的项目。
我在 testng.xml 文件中传递参数。为 testng 配置添加了“main 方法”以创建可执行的 .jar 文件。
我提到了 -- Running TestNG programmatically .但是那里没有传递参数的方法,或者我可能错过了那个方法。
这是我的主要方法的样子:
public static void main(String[] args) {
ExtentReportListener extentReport = new ExtentReportListener();
TestNG testng = new TestNG();
testng.setTestClasses(new Class[] {FirstTest.class});
testng.addListener(extentReport);
testng.run();
}
请帮我在 main 方法本身传递参数。如果您需要更多信息,请告诉我。
最佳答案
首先你有String[] args
。它是传递参数的数组。所以如果你正在运行:
java -jar your_jar.jar param1 param2
您自动获得 args[0]="param1"和 args[1]="param2"
您还可以使用系统属性。
运行
java -jar your_jar.jar -Dparam1=12 -Dparam2=13
您可以从任何地方调用 System.getProperty("param1")
,它会返回“12”。
并且...恕我直言,以编程方式运行 TestNG 项目的最佳方式是使用 maven/gradle surefire 插件。
关于java - Selenium - Maven/TestNG : how can we add testng parameters in Java class while adding "main method" to create executable/runnable. jar 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56353362/