java - 有没有办法为多个 Runner 类运行的多个功能文件创建一个 Cucumber 报告?

标签 java selenium cucumber testng listener

我正在使用 AbstractTestNGCucumberTests 运行 Cucumber 功能。

每个功能文件都有一个相应的 Runner 类,该类扩展了 AbstractTestNGCucumberTests 类。

public class LoginRunner extends AbstractTestNGCucumberTests {
}

public class CreateAccountRunner extends AbstractTestNGCucumberTests {
}

我还使用了 Cucumber 报告监听器,它是 ISuiteListener 的实现。完成后,Cucumber ReportBuilder 将生成报告。

public class CucumberReporting implements ISuiteListener{//}

我的 TestNG.xml 如下所示:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="Suite">
    <listeners>
        <listener
                class-name="listeners.reportlistener.CucumberReport" />
    </listeners>
    <test name="Test - 1">
        <classes>
            <class name="testrunner.LoginRunner" />
            <class name="testrunner.CreateAccountRunner" />
        </classes>
    </test>
</suite>

如您所见,有两个运行者类别。当我运行 testng.xml 时,它会执行一个运行程序类,然后移至下一个。

在这种情况下,只有最后运行的功能文件正在生成 Cucumber 报告。换句话说,报告正在被覆盖。每次运行 xml 都会生成一个 HTML 报告。

如何生成一份包含两个运行者类别结果的报告?

最佳答案

我认为,您需要合并 xml 报告文件。使用唯一的名称保存每个文件,然后合并它。这可能会有所帮助:

Click

关于java - 有没有办法为多个 Runner 类运行的多个功能文件创建一个 Cucumber 报告?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50023279/

相关文章:

java - JFace 对话框按钮栏出现故障

java - Spring Batch中的ItemReader代码重复问题

java - 如何实现几秒钟的点击

python - 我想填写一个文本框,然后使用 python 单击提交按钮

ios - 如何将 ruby​​ 中的随机字符串传递给 iOS 应用程序?

c - 将 Cucumber 与 C 结合使用

java - GWT Bean 验证 (jsr-303) 和 xml 配置

selenium - 用于单击按钮的正确语法

testing - Rails 3.2.3 耙 cucumber : library not loaded

java - 操作系统(linux)如何杀死java程序?当我硬终止一个 java 进程时,jvm 会发生什么?