After Step and before Step Cucumber

2019-08-06 11:31发布

I want to execute something before and after each step(not scenario). How do I do that in Cucumber ?

Like the after and before in junit.

** I am using java.

3条回答
疯言疯语
2楼-- · 2019-08-06 11:50

In recent version of io.cucumber, both @AfterStep and @BeforeStep hooks are available,

import cucumber.api.java.AfterStep;
import cucumber.api.java.BeforeStep;

public class Hooks {

    @BeforeStep
    public void beforeStep() {
        System.out.println("======>  This is before step  <======");
        //Do something before executing the step
    }

    @AfterStep
    public void afterStep() {
        System.out.println("======>  This is after step  <======");
        //Do something after executing the step
    }

}
查看更多
混吃等死
3楼-- · 2019-08-06 11:57

There should be something like AfterStep (haven't found BeforeStep yet)

AfterStep do #After every step #this is also before the next step... end

If you want to filter these for certain steps, do

AfterStep('@cucumis', '@sativus') do # This will only run after steps within scenarios tagged # with @cucumis AND @sativus. end

Reference: https://github.com/cucumber/cucumber/wiki/Hooks

查看更多
乱世女痞
4楼-- · 2019-08-06 12:08

BeforeStep and AfterStep hooks are available in the latest cucumber jvm api. Just update your pom with the latest version for cucumber-jvm. For more information just go through the link below :

https://github.com/damianszczepanik/maven-cucumber-reporting/issues/100

查看更多
登录 后发表回答