我正在尝试使用@BeforeStep /@AfterStep钩子,但似乎没有调用标记。但是@After /@Before钩子工作得很好。
import cucumber.api.java.After;
import cucumber.api.java.AfterStep;
import cucumber.api.java.Before;
import cucumber.api.java.BeforeStep;
@BeforeStep
public void before_step(Scenario scenario, Step step){
System.out.println("!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!");
}
@AfterStep
public void afterStep(){
System.out.println("!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!");
}
@After
public void afterTest() {
System.out.println("after test");
}
@Before
public void beforeTest() {
System.out.println("before test");
}
<dependency>
<groupId>io.cucumber</groupId>
<artifactId>cucumber-java</artifactId>
<version>4.2.0</version>
</dependency
<!-- https://mvnrepository.com/artifact/io.cucumber/cucumber-junit -->
<dependency>
<groupId>io.cucumber</groupId>
<artifactId>cucumber-junit</artifactId>
<version>4.2.0</version>
<scope>test</scope>
</dependency>
<!-- https://mvnrepository.com/artifact/io.cucumber/cucumber-picocontainer -->
<dependency>
<groupId>io.cucumber</groupId>
<artifactId>cucumber-picocontainer</artifactId>
<version>4.2.0</version>
<scope>test</scope>
</dependency>过去,我使用info.cukes组,但今天我将它们改为io.cucumber,这样我就可以使用@AfterStep和@BeforeStep,但无济于事。在过去的info.cukes和现在的io.cucumber中,@After和@Before钩子都工作得很好。
发布于 2020-07-30 17:23:57
您可以尝试从cucumber的io包而不是cucumber.api导入库吗
下面是类
import io.cucumber.java.After;
import io.cucumber.java.Before;
import io.cucumber.java.AfterStep;
import io.cucumber.java.BeforeStep;您还可以添加以下依赖项吗..
<dependency>
<groupId>io.cucumber</groupId>
<artifactId>cucumber-java</artifactId>
<version>${cucumber.version}</version>
</dependency>
<dependency>
<groupId>io.cucumber</groupId>
<artifactId>cucumber-testng</artifactId>
<version>${cucumber.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>io.cucumber</groupId>
<artifactId>cucumber-core</artifactId>
<version>${cucumber.version}</version>
</dependency>如果有帮助,请告诉我。
https://stackoverflow.com/questions/63164652
复制相似问题