【问题标题】:How to implement TestNg reporting in keyword driven framework如何在关键字驱动的框架中实现 TestNg 报告
【发布时间】:2015-04-10 14:18:25
【问题描述】:

我正在尝试在我的关键字驱动框架 (Java) 中实现 TestNG 以用于报告目的。我需要在我的报告中发布每个测试用例(和步骤)的执行时间,每个测试用例(和步骤)的通过/失败状态。如果每个测试用例有单独的方法,TestNG 会自动执行此操作。 我面临的问题是我为每个测试用例运行一个循环,在该循环中调用一个方法来执行那个特定的测试用例。现在,在被调用的测试用例方法中,再次为每个测试步骤调用一个方法。如何设计我的框架,以便 TestNG 将每个测试用例/步骤视为一种新方法,并提供每个测试用例/步骤的执行时间和通过/失败状态。 我也愿意接受任何其他建议,通过这些建议我可以在我的关键字驱动框架中实现报告模块

【问题讨论】:

    标签: java frameworks testng reporting


    【解决方案1】:

    是的,通过一些努力是可行的。您可以创建一个自定义 TestNG 报告器similar to how I did it in this project,然后您可以在测试报告中添加一个新列,就像我添加“测试名称”列一样,然后您可以将您需要的数据放在一起并放置它在测试行的那个单元格中。

    为了存储时间,每个方法调用,我会使用 Apache commons-lang3 中的 Stopwatch。

    【讨论】:

    • 我使用 Apache Stopwatch 来计算执行时间,但我仍然无法实现报告部分。我不知道你是如何在你的项目中实现它的。您能否稍微解释一下您的方法,以便我可以清楚地了解代码在做什么?这将是一个很大的帮助。
    • 我必须实现一个 CustomReport.class (github.com/djangofan/testng-custom-report-example/blob/master/…),它是原始 org.testng.reporters.EmailableReporter2.class 的副本,但被我修改为具有不同的外观和不同的结构。对上述 2 个类进行比较,这可能会使事情更清楚。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-11-01
    • 1970-01-01
    • 2019-03-20
    • 1970-01-01
    • 2016-12-08
    相关资源
    最近更新 更多