据我所知,我们可以像这样通过 maven 运行测试:
对于类:
mvn clean -Dtest=Class1,Class2 test
对于团体:
mvn clean -Dgroup=groupName test
但是,我想基于 <test>
运行测试通过 mvn 命令在 testng.xml 中提到的标记。我的意思是我需要运行什么命令来运行 Sanity
和 Regression
测试。请引用以下testng.xml
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" >
<suite name="Suite1" verbose="1" >
<test name="Sanity" >
<packages>
<package name="org.test.c" />
</packages>
</test>
<test name="Regression">
<packages>
<package name="org.test.a"/>
<package name="org.test.b"/>
</packages>
</test>
</suite>
注意事项:
我在 suiteXmlFiles
下添加了 testng.xml 详细信息pom.xml 标签
最佳答案
要获取 Maven 测试目标可用选项的完整列表,请使用以下命令:
mvn surefire:help -Ddetail=true -Dgoal=test
您可以通过文件名指定一个测试
mvn test -Dtest=MyTest
并按组名
mvn test -Dgroups=groupName
您可以指定要使用的套件 xml 文件列表
mvn test -DsuiteXmlFiles=testng.xml
这个选项的帮助说明
This parameter is ignored if the test parameter is specified (allowing you to run a single test instead of an entire suite).
查看选项列表并考虑最后一条评论,我们可以得出结论,您需要的功能(从命令行选择 testng.xml 文件中定义的测试)未在 maven 3.0.4 中实现。
关于java - 如何使用 Maven 基于 testng.xml 的测试标签运行测试?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27797731/