java - 无法使用 @Before Hook 获取场景对象

标签 java cucumber

我尝试使用 @Before Hook 获取当前场景对象,因为我想显示其名称。 但是当我尝试这样做时,我收到以下异常:

cucumber.runtime.CucumberException: 
    When a hook declares an argument it must be of type    \
    cucumber.runtime.ScenarioResult.
public void sefa.sqlpmi.CucumberStedDefs.afterCucumberScenario( 
    gherkin.formatter.model.Scenario) throws java.lang.Exception

我的代码如下所示:

@Before
public void beforeCucumberScenario(Scenario scenario) throws Exception{
    System.out.println(scenario.getName());
}

这似乎也适用于许多其他人。

最佳答案

确保导入 cucumber.api.Scenario 而不是 gherkin.formatter.model.Scenario。第二个会产生您提到的异常。

关于java - 无法使用 @Before Hook 获取场景对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38478318/

相关文章:

带有通配符的 Java 泛型

java - Selenium Webdriver 警告 - 无效 token "screen"

java - 未找到API包 'mail'或调用 'Send()'异常

java - 如何使用 Cucumber/Selenium/Java 比较场景大纲示例中的值与实际页面上的实际值

android - 如何编写Calabash Android的步骤定义

java - java中子类对象到父类(super class)的显式类型转换

java - 运行时异常 : Binary XML file line : Error inflating class with SurfaceView

java - 在 Cucumber 胶水选项包中使用多个类

maven - 直接从可执行 jar 运行 Cucumber 测试

grails - geb.error.PageInstanceNotInitializedException