当前位置: 首页 > 知识库问答 >
问题:

Intellij中的Cucumber未定义步进引用

松飞翮
2023-03-14

我遇到了IntelliJ2019.2.4Ultimate问题,我无法从Cucumber特性文件导航到glue代码。IntelJ正在抱怨“未定义的步骤引用”。但是,从控制台或通过运行配置执行cucumber测试是成功的。

Cucumber版本5.5.0 Junit版本4.13

根据报告的类似问题,我迄今尝试了以下做法:

  • 已验证Cucumber for Java和Gherkin插件均已启用
  • 使缓存和重新启动的想法无效
  • 已验证SubSteps插件未启用,并且与Cucumber for Java插件冲突
  • 重新启用Cucumber for Java插件
package hellocucumber;

import io.cucumber.junit.CucumberOptions;
import io.cucumber.junit.Cucumber;
import org.junit.runner.RunWith;

@RunWith(Cucumber.class)
@CucumberOptions(
        plugin = {"pretty", "html:target/cucumber"},
        features = {"src/test/resources/hellocucumber"},
        glue={"hellocucumber"},
        monochrome = true
)
public class RunCucumberTest {
}
package hellocucumber;

import io.cucumber.java.en.Given;

public class StepDefinitions {

    @Given("today is Monday")
    public void today_is_Monday() {
        System.out.println("Today is monday");
    }
}

和我的特性文件:src/test/resources/hellocucumber/test.feature

Feature: This is a test

  Scenario: Today is or is not Friday
    Given today is Monday

Intellij抱怨缺少胶水代码:

我迷路了,如果你能给我一些建议,我会非常感激的。谢谢

共有1个答案

潘泳
2023-03-14

本项目在IntelliJ IDEA 2019.3.3中运行良好,如果您使用的是最近的Cucumber版本,请考虑更新。

 类似资料:
  • 我遇到了以下问题。我在Intellij中有四个Cucumber特性文件。我通过IntelliJ插件添加了Cucumber支持。在创建了特性之后,我按如下所示编辑了配置,这样我就可以执行特性文件了。 可悲的是,当我尝试使用步骤定义运行cucumber特性时,我得到的提示是“您可以使用下面的代码片段实现缺少的步骤:”但我已经这样做了。我已经将这些片段复制到步骤定义文件中。当我悬停一个场景时,Intel

  • 我试图按照这篇文章将cucumber规格与IntelliJ中的步骤定义相匹配。 当我按Alt Enter时,我看到检查未定义的步骤选项。但是,我应该看到意图操作创建步骤定义。 我想我已经安装了Cucumber IntelliJ插件,所以这应该不是问题。非常感谢任何帮助。

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

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

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

  • 我们在整个测试套件中有200多个特性和2000多个场景。它工作得很好,但许多步骤定义没有使用,我们想删除它们。 目前,我们很难手动尝试删除步骤定义代码,看看这样做是否破坏了什么。是否有一个工具或实用程序可以识别Java-Cucumber代码库中的哪些步骤定义未被使用,以便将其删除?