如何将TestNG测试结果分配给用例?

时间:2016-09-26 10:20:29

标签: unit-testing testing testng test-reporting

我需要将测试结果分配给用例。 目前我有我的类的TestNG测试(单元测试)。 显然这些测试是由于用例而存在的类,但没有明显的1-1映射。

是否可以将TestNG报告配置为在报告中包含自定义组?

喜欢

F02UC01解析输入 对于这个用例,我有测试类:

  • com.company.product.input.ParseTest

F03UC02产生输出 对于这个用例,我有测试

  • com.company.product.input.OutputTest com.company.product.input.AnotherOutputTest

理想情况下,我不想重新运行或重写现有测试。我只想要另一份测试报告,不同的分组标准。

1 个答案:

答案 0 :(得分:2)

通常通过创建套件xml文件来完成此操作。 E.g。

<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" >
<suite name="Use Case Tests">

  <test name="F02UC01 parse input">
    <classes>
      <class name="com.company.product.input.ParseTest"/>
    </classes>
  </test>

  <test name="F03UC02 produce output">
    <classes>
      <class name="com.company.product.input.OutputTest"/>
      <class name="com.company.product.input.AnotherOutputTest"/>
    </classes>
  </test>

</suite>

也许你可以用包而不是类来选择它们。

<packages>
  <package name="com.company.product.input.*"/>
</packages>

您还可以混合classespackages选项。请参阅testng documentation

修改

  

无论如何,我正在运行所有测试。我只想要另一份报告,其中一些测试是用例。

我想在这种情况下你必须实现自己的IReporter

我会创建一个注释,我可以添加到测试方法中以对它们进行逻辑分组。 E.g。

@Test
@TestTag("F02UC01 parse input")
public void someTest(){
}

然后使用我的自定义报告器中的IAnnotationFinder来报告按注释值分组的测试。