【问题标题】:Undefined step definitions in IntelliJIntelliJ 中未定义的步骤定义
【发布时间】:2014-07-21 06:12:10
【问题描述】:

我正在尝试关注this article to match Cucumber specs with step definitions in IntelliJ

当我按 Alt+Enter 时,我看到 检查“未定义步骤”选项。但是,我应该看到意图操作创建步骤定义

我以为我安装了 Cucumber IntelliJ 插件,所以这应该不是问题。非常感谢任何帮助。

【问题讨论】:

    标签: intellij-idea cucumber


    【解决方案1】:

    原来我有 Gherkin 插件,但没有 Cucumber for Java 插件。

    【讨论】:

    • 谢谢!我刚刚遇到了同样的问题。我建立了一个新项目,打开了一个 .feature 文件,IntelliJ 建议为我安装一个插件,我可以用它来编辑那个 .feature 文件,所以我让它做它的事情。它只包括 Gherkin,但不包括 Cucumber for Java。手动包含 CfJ 插件后,它工作了。
    • 同上!我认为 IJ 与 vanilla Gherkin 插件捆绑在一起是愚蠢的,但没有任何 Cucumbery 插件与之配套。 IJ 应该带有 CfJ(也可能是 CfG),它还引入了 Gherkin 插件作为依赖项。
    • 我可能有同样的问题,但无法处理。我已经通过 maven 导入器导入了小黄瓜和黄瓜(groovy),并且正确下载了 jar,但无法使用 alt + enter 来创建 stepDev。你们究竟是如何进行的?
    • 补充一点,我不小心安装了 SubSteps 插件,这似乎与 Cucumber for Java 发生了有趣的冲突。卸载解决了我遇到的问题。
    【解决方案2】:

    我浪费了大约一个小时来解决这个问题。我的问题是,Idea 能够从功能导航到步骤文件。但是当我想从功能文件中执行一个黄瓜测试(右键单击并运行场景)时,它给出了未定义步骤的错误。

    解决方案:在编辑配置中 -> 为黄瓜提供胶水,该胶水应该是步骤文件夹的绝对路径。请看下面的屏幕截图

    这解决了我从 Idea 运行功能文件的问题。 希望这对其他人有帮助。

    【讨论】:

    • 谢谢桑杰。还要包含多个步骤文件夹,请在 intellij 的 Glue 文本框中输入带空格的名称。
    • 我的配置已由 Intellij 在右键单击 -> 运行时自动生成。所以我只是删除了配置,重新运行右键运行选项
    • 这真的帮助我解决了这个问题 - 一个很好的问题指针!!
    • @Sanjay 我遇到了未定义的场景问题,胶水应该输入什么?我已经设置了路径,直到像这样到达功能文件,但它没有帮助 "\src\test\resources\features\creating_todos"
    • @user12158726 胶水应该指向您的步骤所在的文件夹,并且功能或文件夹路径应该指向您的功能文件所在的文件夹。
    【解决方案3】:

    我必须取消选中"Build, Execution, Deployment" -> "Build Tools" -> "Gradle" 设置下的“Create separate module per source set”复选框,然后重新构建项目。

    【讨论】:

      【解决方案4】:

      很可能您需要安装 cucumber for java 插件,如果已经安装,则需要从 File>>Settings>>pugins 启用。

      【讨论】:

        【解决方案5】:

        如果您导入新的 BDD 项目,则会出现“未定义”步骤错误消息。

        出现此错误的原因可能有两个。

        1. 如果您还没有安装“Cucumber for Java”插件。
        2. 如果您导入任何 BDD 项目,则它不会检测步骤定义文件。

        解决方案: 1. 如果找不到插件,则需要从以下位置安装。 文件->设置->插件->MarketPlace->Cucumber for Java 2. 导入项目后禁用插件并在已安装下的已安装部分再次启用。

        【讨论】:

          【解决方案6】:

          对我来说,Intellij 中的 Sidesteps 插件和 Cucumber 插件之间存在冲突,因此 *.feature 文件扩展名被 Sidesteps 插件接管,并且期望 Sidesteps 步骤定义忽略 Cucumber 步骤定义。不知道Sidesteps实际上是什么。因此,转到 IntelliJ 设置并将 *.feature 扩展名重新分配给 Cucumber Scenario 类型,然后一切正常,Intellij 现在可以识别 Cucumber 步骤。

          【讨论】:

          • 对我来说,这是创建相同问题的子步骤插件,禁用它后,链接工作正常
          【解决方案7】:

          我发现即使安装了 Cucumber for Java 插件,它仍然只生成一步。我最终卸载了 Cucumber for Java 插件并重新安装它并生成了所有步骤定义。

          【讨论】:

            【解决方案8】:

            我遇到了同样的问题,我的步骤定义胶水功能突然丢失了。我所做的只是转到运行->编辑配置->并删除了黄瓜 java 配置并重新启动 IntelliJ。效果很好。

            【讨论】:

              【解决方案9】:

              在将 Intelij 更新到最新版本以及更新 cucumber 和 gherkin intelij 插件后,该问题已得到修复

              【讨论】:

                猜你喜欢
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 2022-08-19
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 2021-12-27
                相关资源
                最近更新 更多