cucumber 版本:1.2.5
特点:
@SSS
Feature: Login
Scenario: Login And Logout
* UI Login with user "moaada" and password "moaada12"
* UI Logout
我正在使用 junit 运行功能文件:
@RunWith(Cucumber.class)
@CucumberOptions(
format = {"pretty", "html:target/cucumber", "json:target/cucumber.json"},
glue = {"com.webuiauto.bddtests"},
features = {"src/test/resources/Features"},
strict = true,
tags = {"@SSS"})
public class RunViBddTests {
}
在浏览器中打开 index.html
文件后,我什么也看不到;只是一张空白页。我检查了浏览器,在控制台中收到以下错误:
formatter.js:112 Uncaught TypeError: Cannot read property 'append' of undefined
at CucumberHTML.DOMFormatter.write (formatter.js:112)
at HTMLDocument.<anonymous> (report.js:15)
at k (jquery-1.8.2.min.js:2)
at Object.fireWith [as resolveWith] (jquery-1.8.2.min.js:2)
at Function.ready (jquery-1.8.2.min.js:2)
at HTMLDocument.D (jquery-1.8.2.min.js:2)
最佳答案
由brasmusson ( https://github.com/cucumber/cucumber-jvm/issues/1303 ) 回答
“在钩子(Hook)的 Scenario 参数上调用 write 将会在 report.js 文件中添加 formatter.write 调用。https://github.com/cucumber/cucumber-html 的 javascript 函数将在上一步下方显示 formatter.write 调用的内容。对于在执行第一个场景的钩子(Hook)之前,不存在任何前面的步骤,因为尚未执行(小 cucumber )步骤,因此从此时开始报告将为空白(对于后续场景的钩子(Hook)之前的 formatter.write 调用,内容将显示在上述场景的最后一步下方,这是不正确的,但报告至少不会为空)。
要解决此问题,https://github.com/cucumber/cucumber-html项目需要更新。然而,由于计划是替换该项目,请参阅 cucumber/cucumber-html#44,我不确定核心团队中的任何人都会承担这项工作。
如果使用了 html 格式化程序,解决方法是不对 before Hook 的 Scenario 参数调用 write。”
关于javascript - Cucumber生成空白html报告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47817891/