2010-08-19 96 views
2

我在命令行像这样调用TestNG的:如何在特定组(从命令行)中进行TestNG运行测试?

java org.testng.TestNG -groups "foo" testng.xml 

...仅为运行测试带注释的意图:

@Test(groups = { "foo" }) 

...但它的运行我所有的试验。我需要更改我的testng.xml文件吗?

<suite name="BarSuite" verbose="1"> 
    <test name="AllInPackage"> 
    <packages> 
     <package name="com.example.bar"/> 
    </packages> 
</test> 
</suite> 

是TestNG的无视-groups命令行参数,因为的testng.xml说,运行在包中的所有测试?如果是这样,我应该如何更改我的testng.xml文件?

回答

1

你明白了:如果你指定了一个testng.xml,它将优先于命令行开关。

就以下内容添加到您的XML文件:

<groups> 
    <run> 
     <include name="foo" /> 
    </run> 
    </groups> 
+0

这工作验证。但是,我不需要指定一个testng.xml文件吗?我可以修改我的testng.xml文件,因此可以使用-groups命令行选项(而不是为每个要运行的组的子集都有单独的testng.xml文件)? – 2010-08-19 22:24:56

+0

没有回答上一个问题?如何从命令行指定组? – Nikem 2012-02-28 20:34:25

+0

正如我在我的回答中所说的,如果您使用-groups,则不能使用testng.xml。它是一个或另一个。 – 2012-02-29 16:22:59

0

的Java:
在特定群体与TestNG的运行测试是很容易的:
1)打开你的命令行项目文件夹
例如:cd C:\FunctionalTests
2)按组运行测试

mvn test -Dgroups=group1,group2 

1组,第2组 - 名试验组
example in java

NB的!
mvn test命令的工作,如果你的项目建设经理maven.
如果你不知道,什么样的建筑使用的是经理,你可以通过检查你的项目(即)的pom.xml存在

+2

尽管这段代码片段是受欢迎的,并且可能会提供一些帮助,但如果它包含* how *和* why *的解释](// meta.stackexchange.com/q/114762)问题。请记住,你正在为将来的读者回答这个问题,而不仅仅是现在问的人!请编辑您的答案以添加解释,并指出适用的限制和假设。 – 2017-03-22 16:49:14

+0

感谢您的反馈!完成。 – 2017-03-23 13:27:00

相关问题