我正在使用 JBehave 运行使用 WebDriver 编写的测试。Maven 用于自动化构建过程。现在,当我运行测试并且它们失败时,即抛出有关超时的异常等,整个构建不会中断。
这是异常的示例输出:
谁能告诉我为什么在那之后构建不会失败以及如何让它失败?如果您需要更多信息,请告诉我什么。
设置org.jbehave.core.configuration.Configuration
对象时,添加:
myConfiguration.usePendingStepStrategy(new FailingUponPendingStep())
在我的项目中,我使用 maven-failsafe-plugin 执行测试,我遇到了同样的问题。解决方案是为故障安全添加验证阶段:
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-failsafe-plugin</artifactId>
<executions>
<execution>
<id>failsafe-verify</id>
<phase>verify</phase>
<goals>
<goal>verify</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
虽然晚了 5 年,实际上并没有回答 2012 年提出的问题,但 jBehave 4.0 有一个错误,即使用 jBehave 4.0+ 时,Maven 运行不会触发 Maven 失败。
因此,如果您在 2017 年或 2018 年从谷歌搜索到这里,请查看票证,因为它可能包含您问题的答案(截至 2017 年撰写本文时,它是“降级到 3.9.5...)
可能设置以下属性会有所帮助:
-Dignore.failure.in.view=false