TestNG报告定制

时间:2018-11-12 22:14:01

标签: java testng

我的TestNG报告显示了SuperPrizeSweep1和SuperPrizeSweep1_complete这两个测试的结果。我需要在TestNG报告中仅显示一个测试SuperPrizeSweep1的结果,有什么方法可以做到?

<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" >  
    <suite name="Main Suite" parallel="false">

       <test name="Android Automation" preserve-order="true">
            <classes>
               <class name="com.TestSuite.TestSet3"> 
                <methods> 
                    <include name="SuperPrizeSweep1" />
                    <include name="SuperPrizeSweep1_complete" />                                                          
                </methods>              
               </class>
            </classes>
    </test>                                          
 </suite>

1 个答案:

答案 0 :(得分:0)

如果不构建自己的IReporter侦听器实现(将其作为TestNG侦听器进行连接),就无法完成此工作。

默认情况下,TestNG的默认报告显示了已执行的所有测试(因此,您可以在截至目前TestNG默认提供的emailable-reporthtml report中看到它。

如果您要构建它,可以按照以下步骤进行

  • 创建一个新的自定义标记注释,例如IgnoreFromReport,您需要将其添加到要从报告中排除的所有方法。
  • 实现org.testng.IReporter界面,其中对于套件中的所有ITestResult对象(ITestResult对象是每个@Test方法中的一个),您将提取对应的java.lang.reflect.Method对象(代表实际测试方法),并检查它是否具有上述标记注释,如果是,则将其从报告中排除。