【问题标题】:TestNG Report customizationTestNG 报告定制
【发布时间】:2018-11-12 22:14:01
【问题描述】:

我的 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>

【问题讨论】:

  • 分享您的 com.testng.report.custom.CustomTestNGReporter 代码
  • 对不起,我没有实现 CustomTestNGReporter。
  • 好的。那么您想在哪个报告中显示 SuperPrizeSweep1 测试? xml 报告?

标签: java testng


【解决方案1】:

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

默认情况下,TestNG 的默认报告显示所有已执行的测试(因此您会在 emailable-report 和 TestNG 目前默认提供的 html report 中看到这一点。

如果您想构建它,您可以按照以下方式进行操作

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-12-30
    • 1970-01-01
    • 1970-01-01
    • 2021-12-23
    • 1970-01-01
    相关资源
    最近更新 更多