我需要将测试结果分配给用例。 目前我有我的类的TestNG测试(单元测试)。 显然这些测试是由于用例而存在的类,但没有明显的1-1映射。
是否可以将TestNG报告配置为在报告中包含自定义组?
喜欢
F02UC01解析输入 对于这个用例,我有测试类:
F03UC02产生输出 对于这个用例,我有测试
理想情况下,我不想重新运行或重写现有测试。我只想要另一份测试报告,不同的分组标准。
答案 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>
您还可以混合classes
和packages
选项。请参阅testng documentation。
修改强>
无论如何,我正在运行所有测试。我只想要另一份报告,其中一些测试是用例。
我想在这种情况下你必须实现自己的IReporter
。
我会创建一个注释,我可以添加到测试方法中以对它们进行逻辑分组。 E.g。
@Test
@TestTag("F02UC01 parse input")
public void someTest(){
}
然后使用我的自定义报告器中的IAnnotationFinder
来报告按注释值分组的测试。