在Jbehave中,我们可以根据场景成功/失败的结果执行方法。下面提到的方法之一将在失败和成功之后执行。
@AfterScenario(uponOutcome=AfterScenario.Outcome.SUCCESS)
public void afterSuccessfulScenario() {
// Some code to execute...
}
@AfterScenario(uponOutcome=AfterScenario.Outcome.FAILURE)
public void afterFailedScenario() {
// Some code to execute...
}
我正试图在Cucumber-jvm中实现同样的目标。方案Hooks @Before
和@After
将在每个场景后执行。但我想为每个失败场景执行一些代码。
我不知道如何在cucumber-jvm中实现它。任何线索?
你可以使用cucumber-jvm hooks
来实现它。如果一个钩子接收一个Scenario
作为参数,你可以知道它是否失败。
例:
@After
public void afterScenario(Scenario scenario) {
if (scenario.isFailed()) {
// Some code to execute...
}
if(scenario.isPassed()) {
// Some code to execute...
}
}
请注意@After
的导入:
import cucumber.api.java.After;
希望能帮助到你。