场景通过或失败时的 Cucumber-jvm 挂钩
Cucumber-jvm Hooks when Scenario is passed or failed
在 Jbehave 中,我们可以根据场景 success/failure 的结果执行方法。下面提到的方法之一将在失败和成功后执行。
@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;
希望对您有所帮助。
在 Jbehave 中,我们可以根据场景 success/failure 的结果执行方法。下面提到的方法之一将在失败和成功后执行。
@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;
希望对您有所帮助。