IntelliJ与黄瓜(java)和步骤定义位置

时间:2013-04-08 01:19:53

标签: intellij-idea cucumber

好的,所以我正在使用IntelliJ开发一个项目并试图利用它的黄瓜功能。我没有使用黄瓜的java风格,但是IntelliJ似乎想要相对于特征文件在特定位置的步骤定义文件。

我发现这个:how to define step definitions location for cucumber in intelliJ 12和其他来源指出我能够添加运行配置的“glue”属性,告诉cuke找到步骤文件的包。所以我可以通过IDEA运行我的测试。但我每次运行新测试时都需要设置此项,因为Ctrl + Alt + F10或右键单击+运行测试不会以此标志启动测试。此外,由于IDEA不知道步骤的位置,它不会自动完成或按Ctrl +单击导航到步骤,因此ID支持被搞砸了。

有没有办法让IDEA项目在运行测试时自动查找给定包中的步骤并自动完成?

6 个答案:

答案 0 :(得分:12)

为可能遇到此问题的其他人创建自己的答案。我的项目没有标记为测试源根目录的步骤,虽然我做了这个,但直到我关闭并重新打开我的项目才得到它们。所以我的回答是一个简单的重启。

答案 1 :(得分:5)

您可以通过打开“编辑配置 - >默认值 - > Cucumber Java - > Glue”来全局设置粘贴位置,并添加包名称。

(IntelliJ 12.1.4)

答案 2 :(得分:5)

Go File-> Settings - >插件 然后你可以管理黄瓜插件,如下所示 当您单击测试时,这应该会将您重定向到步骤定义。

enter image description here

希望这有帮助

答案 3 :(得分:2)

IntelliJ支持Cucumber-Java / Groovy的插件。安装此插件将启用从功能文件中提到的步骤到步骤定义的导航。

enter image description here

创建“步骤定义”后,很容易导航

enter image description here

答案 4 :(得分:0)

我进入EditConfiguration的Glue部分,然后将路径放在上面的包中,而该包是您的步骤类,例如: CucumberFramework.stepsDefinitions

答案 5 :(得分:0)

这真的是胡说八道:),但在我的情况下,由于安装了某些插件,例如,IDEA拒绝自动添加步骤定义。 Scala的黄瓜,建议删除它们,因为我在其他项目中需要它们,所以我无法删除它们。因此,长话短说,要添加(创建步骤定义),您需要在“ glue”目录中创建Class并使用一些虚假的Cucumber实现,再花一个时间来解决问题。

 Background:
 When I use IDEA 2018.2
 And Java 8
 And Cucumber info.cukes:cucumber-java:1.2.4

 @When("^I created a Class and put there fake step implementation$")
 @And("^I run gradle build one more time :)$")
 @Then("^This Class will be able for me from the feature file by ALT+ENTER as usual$")
 @And("^It resolved my issue when I was not able to automatically generate step definition$")