我有一个用Intellij思想编写的Maven项目(appium / java)。要运行测试,我必须运行testng.xml文件。 我想从命令行运行测试脚本。我怎样才能做到这一点?我发现从命令行运行testng.xml的各种链接,但是没有一种解决方案适合我。预先感谢
答案 0 :(得分:1)
由于您是Maven项目,因此导航到项目路径后,可以从命令行使用选项 mvn clean test 。这将在testng.xml文件中运行测试
如果您有多个测试xml文件,则可以使用Surefire plugin。您需要在pom.xml中添加以下内容:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>3.0.0-M3</version>
<configuration>
<suiteXmlFiles>
<suiteXmlFile>${suiteXmlFiles}</suiteXmlFile>
</suiteXmlFiles>
</configuration>
</plugin>
添加所需的任意suiteXmlFile标记,并且该标记应指向test1.xml,test2.xml等的位置, 然后在命令行中使用命令
mvn clean test -DsuiteXmlFile.suiteXmlFiles=path/to/test1.xml
如果要运行多个测试xml文件,可以使用命令
mvn clean test -DsuiteXmlFile.suiteXmlFiles=path/to/test1.xml,path/to/test2.xml
希望这会有所帮助
答案 1 :(得分:0)
如果使用testng.xml文件运行appium案例,则可以使用maven的surefire插件通过maven运行testng文件。而且行家可以使用命令行来运行。
因此,基本上,您可以运行maven命令,该命令将使用surefire插件在内部运行tesng.xml文件。如下所示,在build部分的pom文件中添加surefire插件。然后运行mvn test命令,它将起作用。
<build>
<resources>
<resource>
<filtering>true</filtering>
<directory>src/main/resources</directory>
</resource>
</resources>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.18.1</version>
<configuration>
<suiteXmlFiles>
<suiteXmlFile>Give your testng.xml file path</suiteXmlFile>
</suiteXmlFiles>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.5.1</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
</plugins>
</build>