无法创建 .feature 黄瓜文件 IntelliJ - 'Cannot create class-file'

Unable to create .feature cucumber file IntelliJ - 'Cannot create class-file'

我有一个 java cucumber 项目,它设置了所有必需的依赖项 运行ning 最新的 cucumber-java、cucumber-junit 和小黄瓜等依赖项。我也为黄瓜和小黄瓜安装了插件。

IntelliJ 不允许我创建扩展名为“.feature”的文件。我收到 'Cannot create class-file' 的错误。奇怪的是,如果我在我的 ./resources/features 文件夹中创建一个常规文件(即没有 .feature 扩展名),然后将其关联为一个 'cucumber scenario' 文件,IntelliJ 会识别它并在其前面加上绿色小黄瓜标志在文件目录中。它还能识别所有 'Given When Then' 语法并在文件中正确格式化。但是当我 运行 我的 运行ner 时,它报告没有找到任何功能。我认为这是因为它正在寻找“.feature”扩展名?

以前有人遇到过这个问题吗?它让我感到困惑,因为它似乎黄瓜和小黄瓜设置正确,因为它允许我创建一个黄瓜场景文件,但不是带有“.feature”扩展名。有关信息,我的 运行ner 文件如下所示。在此先感谢您的帮助,这让我发疯:)

@RunWith(Cucumber.class)
@CucumberOptions(features = "C:\Users\joe.bloggs\Desktop\dram_automation_suite\src\test\resources\features")
public class CucumberRunTest {
}

你的错误听起来确实很奇怪。我在 Idea 中创建文件(任何文件)的经验都很有效。您确定您没有尝试创建 java 文件,即 class?

对于您的其他问题,请将功能文件与测试运行程序放在同一个包中。但是在resources目录下。

如果您的跑步者住在包 com.company.lucy 中,则将特征文件存储在 src/test/resources/com/company/lucy 中 这将允许 Cucumber 找到它,因为 Cucumber 搜索它的 class 路径并使用它找到的每个名为 .feature

的文件

这将允许您将跑步者指定为:

@RunWith(Cucumber.class)
public class CucumberRunTest {
}

您维护许多功能文件的问题将会消失。

因为这似乎是一个 Maven 项目,资源文件夹中的任何内容最终都会出现在您的 class 路径中。 src/test/resources 中的任何内容都将出现在您的测试 class 路径中。