当前位置: 首页 > 面试题库 >

Cucumber类扩展步骤定义和挂钩

丁善
2023-03-14
问题内容

我想从Java中的“ AbstractBase_step”类扩展。所以我想有一个像这样的钩子:

public abstract class AbstractBase_Steps {
    protected Scenario scenario;
    @Before
    public void background(Scenario scenario) {
        this.scenario = scenario;
    }
}

每个步骤文件都会被调用:

public abstract class Hello_Steps extends AbstractBase_Steps {
}

当我这样做时,我得到

cuming.runtime.CucumberException:不允许扩展定义“步骤定义”或“挂钩”的类。Hello_Steps类扩展了AbstractBase_Steps类

有人为此有把戏吗?

编辑:为了重用相同的步骤定义,我创建了一个新的Class Common_Steps类并将其包括在粘合路径中。因此,其定义可用于测试中的所有功能文件。


问题答案:

检查此讨论。

希望这可以帮助。



 类似资料:
  • TL:DR控制台不显示缺少步骤的步骤正则表达式 编辑:添加功能文件

  • 是否有Visual Studio代码扩展来编写cucumber步骤定义? 例如,使用IntelliJ,如果我键入

  • 我今天将我的serenity和cucumber测试升级到2.6.0 en cucumber 6版本。只需要更改大量程序包,并且功能文件的步骤不再链接到步骤定义。如果我的cucumberrunner的设置 但是,如果我在功能文件中查看intellij,您将无法再单击步骤以转到定义。当我运行功能文件时,我会得到以下异常: 我不确定是什么地方出了问题,因为相同的代码适用于以前的版本

  • 自从我升级到最新的社区版IntelliJ 15.0.3以来,每当我使用alt-enter从功能定义文件自动生成步骤定义时,它都会以驼峰大小写而不是带下划线的常规样式创建方法。 例如,它过去是这样生成的 但现在它产生了通常的camelCase惯例: 有没有办法把这个设置改回第一种样式? 谢谢

  • 我不能为一个项目用cucumber执行简单的测试。我在Intellij13社区,使用cucumber插件。 我在features目录中编写了我的features文件,我还通过插件实现了创建它们的步骤。intellij可以识别功能文件中的我的步骤,它可以导航并转到步骤实现。当我尝试运行我的场景时,if无法声明“未定义的步骤”。任何帮助都将不胜感激。 以下是我如何组织我的项目:

  • 好的,所以我正在使用IntelliJ进行一个项目,并试图利用它的cucumber功能。我没有使用过cucumber的java风格,但IntelliJ似乎希望步骤定义文件位于相对于特性文件的特定位置。 我在Intellij12和其他来源中找到了:如何定义cucumber的步骤定义位置,这些来源指出我能够添加运行配置的“glue”属性,它告诉cuke在哪个包中查找步骤文件。因此,我可以通过idea运行