本文介绍了Selenium-Maven/TestNG:如何在Java类中添加testng参数,同时添加"main方法"?创建可执行文件/runnable.jar文件?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我与Maven的TestNG有项目.

I have project with TestNG, Maven.

我正在testng.xml文件中传递参数.为testng配置添加了主要方法",以创建可执行的.jar文件.

I am passing parameters in testng.xml file. Added "main method" for testng config to create executable .jar file.

我已经引用了以编程方式运行TestNG .但是那里没有用于传递参数的方法,或者我错过了那个.

I have referred -- Running TestNG programmatically. But no method is present there for passing parameters or maybe I have missed that one.

这是我的主要方法的样子:

This is how my main method looks like:

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方法本身中传递参数.让我知道您是否需要更多信息.

Please help me out to pass parameters in main method itself. Let me know if you need more info.

推荐答案

首先,您拥有String[] args.它是传递参数的数组.因此,如果您正在跑步:

First of all you have String[] args. It's array of passed parameters. So if you're running:

java -jar your_jar.jar param1 param2

java -jar your_jar.jar param1 param2

您会自动获得args [0] ="param1"和args [1] ="param2"

you automatically obtain args[0]="param1" and args[1]="param2"

您还可以使用系统属性.

You also can use a system properties.

运行

java -jar your_jar.jar -Dparam1 = 12 -Dparam2 = 13

java -jar your_jar.jar -Dparam1=12 -Dparam2=13

您可以从任何地方致电System.getProperty("param1"),它将返回"12".

You can call System.getProperty("param1") from anywhere and it will return you "12".

然后... Imho以编程方式运行TestNG项目的最好方法是使用maven/gradle surefire插件.

And... Imho the best way to run TestNG project programmaticaly is using of maven/gradle surefire plugin.

这篇关于Selenium-Maven/TestNG:如何在Java类中添加testng参数,同时添加"main方法"?创建可执行文件/runnable.jar文件?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

10-21 05:03