我在feature files
中有我的src/resources/com/features
,在step definitions
中有我的src/main/java/com/step_definitions
我的测试都可以正确运行,但是即使我要求它创建一个新的intelliJ也不知道步骤defs在哪里。在哪里配置?
最佳答案
我只是碰到了完全相同的问题(据记录,我的背景是Java,Ruby,Cucumber和RubyMine,但是我对IntelliJ和Cucumber-JVM完全陌生)。
在Cucumber-JVM run configuration
中,您必须指定包,其中包括在IntelliJ documentation中提到的步骤定义存储在glue
字段中的包。 IntelliJ(至少对我而言)似乎没有提供默认值。
为了进一步详细说明,一个非常基本的项目如下所示:
Example
└───src
├───main
│ └───java
└───test
├───java
│ └───com
│ └───bensnape
│ └───example
│ MyStepdefs.java
└───resources
example.feature
此处的glue
值为com.bensnape.example
。更新
在今天早上与IntelliJ一起玩了更多之后,如果您遵守Cucumber-JVM约定,它似乎确实为您提供了
glue
值-即功能必须位于src/test/resources/<package>
下,并且类似地,步骤必须位于src/test/java/<package>
下。示例项目树:
Example
└───src
├───main
│ └───java
└───test
├───java
│ └───com
│ └───bensnape
│ └───example
│ MyStepdefs.java
│
└───resources
└───com
└───bensnape
└───example
example.feature
关于grails - 如何在智能12中定义 cucumber 的步骤定义位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13993472/