7
的情况是这样的:附加日志JBehave
我们使用JBehave和硒对系统集成和端到端测试。 我正在检查页数超过20个值的计算结果进行验证。 使用Junit断言整个测试将失败,其中一个值的第一个实例不正确。我想要做的是,如果断言失败,测试继续执行,以便我可以在一次测试运行中比较所有不正确的值,而不是多次测试运行。
为此,我捕获断言并将任何未通过验证的日志文件写出来。这给我留下了几个问题:
1)我写出断言失败的日志文件不包含发生异常时正在运行的JBehave Story或Scenario的名称。
2)JBehave的故事或情景被列为'通过',我希望它被列为'失败'。
是否有任何方法可以将Story和Scenario的名称记录到附加日志文件中或者获取写入JBehave日志文件的附加日志记录?
我如何获得标记为失败的故事/方案?
在JBehave配置我:
configuredEmbedder()
.embedderControls()
.doIgnoreFailureInStories(true)
.doIgnoreFailureInView(false)
.doVerboseFailures(true)
.useStoryTimeoutInSecs(appSet.getMaxRunningTime());
和
.useStoryReporterBuilder(
new StoryReporterBuilder()
.withDefaultFormats()
.withViewResources(viewResources)
.withFormats(Format.HTML, Format.CONSOLE)
.withFailureTrace(true)
.withFailureTraceCompression(true)
.withRelativeDirectory("jbehave/" + appSet.getApplication())
谢谢。这真的很有用。 –
您可以请添加更多关于我们如何创建记录器的信息。 请解释一下:私人日志日志= ... – farheen
这取决于您使用的日志框架。如果你正在使用slf4j:'Logger log = LoggerFactory.getLogger(MyStoryReporter.class);'。主要的一点是,它可能是这些回调方法中的任何东西 - 你可以做一个sysout,写入数据库或其他任何东西 – plasma147