11

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

我发现了这一点:如何在 intelliJ 12和其他来源中定义黄瓜的步骤定义位置,这些来源指出我能够添加我的运行配置的“胶水”属性,它告诉 cuke 哪个包可以找到步骤文件。所以我现在可以通过 IDEA 运行我的测试。但是我每次运行新测试时都需要设置它,因为 Ctrl+Alt+F10 或右键单击+运行测试不会使用此标志启动测试。此外,IDE 支持被搞砸了,因为 IDEA 不知道步骤在哪里,它不会自动完成或 Ctrl+单击导航到步骤。

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

4

6 回答 6

15

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

于 2013-04-09T02:37:42.860 回答
8

您可以通过打开“Edit Configurations -> Defaults -> Cucumber Java -> Glue”并添加包名称来全局设置粘合位置。

(智能 12.1.4)

于 2014-02-06T10:32:05.480 回答
8

转到文件->设置->插件

安装Cucumber for Java插件

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

在此处输入图像描述

希望这可以帮助

于 2016-11-02T15:40:40.963 回答
4

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

在此处输入图像描述

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

在此处输入图像描述

于 2015-12-08T21:43:24.473 回答
0

我进入 EditConfiguration,Glue 部分,我将路径从上面的包和你的步骤类所在的包放在哪里,例如:CucumberFramework.stepsDefinitions

于 2018-06-22T11:37:20.617 回答
0

这真的是胡说八道:)但在我的情况下,当IDEA由于安装了一些插件而拒绝自动添加步骤定义时,例如Cucumber for Scala并建议删除它们,因为我在其他项目中需要它们,所以我无法删除它们。因此,长话短说,要添加(创建步骤定义),您需要在“胶水”目录和一些假 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$")
于 2018-12-29T11:47:07.997 回答