Cucumber-jvm Hooks 当方案通过或失败时



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;

希望对您有所帮助。

最新更新