【发布时间】:2018-10-05 23:45:31
【问题描述】:
我正在使用 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 报告。
如何生成一份报告,其中包含两个跑步者类的结果?
【问题讨论】:
标签: java selenium cucumber testng listener