6

我正在从命令行调用 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 文件?

4

2 回答 2

4

你完全正确:如果你指定一个 testng.xml,它优先于命令行开关。

只需将以下内容添加到您的 XML 文件中:

  <groups>
    <run>
      <include name="foo"  />
    </run>
  </groups>
于 2010-08-19T22:04:15.593 回答
4

Java:
在特定组中使用 TestNG 运行测试非常容易: 1)在命令行 示例
中打开项目文件夹: 2)按组运行测试
cd C:\FunctionalTests

mvn test -Dgroups=group1,group2

group1, group2 - java中测试组示例的名称

注意!
mvn test如果您的项目构建经理是Maven,则命令有效。
如果您不知道您使用的是哪种构建管理器,您可以通过检查(即)项目中是否存在 pom.xml 来验证它

于 2017-03-22T14:05:50.950 回答