【发布时间】:2016-04-18 03:03:33
【问题描述】:
我们在 Cucumber-JVM 中有测试自动化脚本。目前执行我们的脚本大约需要 2 个小时,我们正在使用 json 格式化程序进行报告。执行后我们会得到报告。
有没有办法在使用 json 格式化程序的每个场景之后发布 cucumber.json 报告?我应该能够在执行期间看到报告。我不必等到所有脚本都完成。
【问题讨论】:
标签: cucumber-jvm
我们在 Cucumber-JVM 中有测试自动化脚本。目前执行我们的脚本大约需要 2 个小时,我们正在使用 json 格式化程序进行报告。执行后我们会得到报告。
有没有办法在使用 json 格式化程序的每个场景之后发布 cucumber.json 报告?我应该能够在执行期间看到报告。我不必等到所有脚本都完成。
【问题讨论】:
标签: cucumber-jvm
更多细节(例如运行时 Jenkins?Linux 桌面上的 Eclipse?你在使用 log4j 吗?)会有所帮助。话虽如此,在hook之后,您可以将场景状态写入文件,然后您可以tail。
@After
public void afterScenarioExecution(Scenario scenario) {
log = Logger.getLogger(YourClass.class);
log.info("Scenario: '" + scenario.getName() + "' has status " + scenario.getStatus());
}
}
您的 log4j.properties 文件可能如下所示:
# root level configurations
log4j.rootLogger=INFO,console,file
# configuration for console outputs
log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern=%d{HH:mm:ss} %-5p %c{1}:%L - %m%n
# configuration for file output (into a file named messages.log)
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.File=messages.log
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n
# threshold for file output
log4j.appender.file.Threshold=INFO
当然,如果您有控制台,则无需尾随。
【讨论】: