我试图使用命令行在Maven中运行特定的TestNG套件。
我有两个不同的套房smoke.xml
regression.xml
我的pom。xml
文件如下所示
<groupId>com.FNB</groupId>
<artifactId>FNB_Testing</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>
<name>FNB_Testing</name>
<url>http://maven.apache.org</url>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
<version>3.4.0</version>
</dependency>
<dependency>
<groupId>org.testng</groupId>
<artifactId>testng</artifactId>
<version>6.11</version>
<scope>test</scope>
</dependency>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.20</version>
<configuration>
<suiteXmlFiles>
<suiteXmlFile>/FNB_Testing/regression.xml</suiteXmlFile>
<suiteXmlFile>/FNB_Testing/smoke.xml</suiteXmlFile>
</suiteXmlFiles>
</configuration>
</plugin>
</plugins>
</build>
我正在使用命令mvn test-DsuiteXmlFile=*套件名*
然而,它只会运行回归套件,即使使用somke.xml
您可以像下面这样参数化多个套件文件
<suiteXmlFiles>
<!-- Pass testng.xml files as argument from command line -->
<suiteXmlFile>${suiteXmlFile}</suiteXmlFile>
</suiteXmlFiles>
然后执行以下命令使用Maven参数化多个testng.xml文件:
mvn clean test -Dsurefire.suiteXmlFiles=regression.xml,smoke.xml
一些注意事项: 1。我最初使用的TestNG jar来自java项目中的maven repo。下面的所有方法都是用maven testNG jar和新的TestNG6.9.12下载进行测试的。 2。我可以从Eclipse中运行这个文件。只有当我尝试从命令行运行时才有问题。 3。最终目标是通过javafx应用程序按钮触发命令行来运行测试。如果提供的解决方案避免在cmd中键入绝对路径,因为应用程序将在
我已经用maven和testNG配置了eclipse,用我的pom配置了PF。xml如下: 我是runnong,在命令提示符下点击这个目录:D:\EclipseWorkspace\iON27Feb2013\iONAutomation\common 我的cmd控制台显示:
但是,这将生成以下错误消息: 我查看了testNG文档(http://testNG.org/doc/documentation-main.html),它只是说testNG必须在您的类路径中,所以现在我有点困惑。任何帮助都将不胜感激。
如何在linux命令行中从maven命令运行文件?
我有maven测试项目如下: pom.xml testng.xml 跟踪测试。JAVA 当我尝试运行“mvn test”命令时,它运行得很好,但当我尝试使用maven命令运行特定的测试类(如“mvn test-Dtest=TrackerTest”)时,它会引发如下异常: 看起来使用maven命令运行特定的测试类并没有尝试从testng获取参数。xml,我也尝试过类似“mvn test-Dtest=