【发布时间】:2017-06-15 18:21:01
【问题描述】:
我已经处理过与此相关的所有以前的 StackOverflow 问题。这篇文章会很长,所以请多多包涵。我的黄瓜项目中的文件夹顺序如下:
-src/main/java
-src/main/resources
-src/test/java
-|CucumberRunner (package)
-|CucumberTestRunner.java
-|CucumberTestDefinition (package)
-|CucumberStepDefinition.java
-src/test/resources
-CucumberFeaturesFolder
-|CucumberFeatureFile.feature
如果上述顺序对您没有意义,这里是项目文件夹排列的图片。 Order of project folders inside the project
我的 pom.xml 添加了以下依赖项(不再依赖):
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
<version>3.4.0</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.11</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>info.cukes</groupId>
<artifactId>cucumber-java</artifactId>
<version>1.2.2</version>
</dependency>
<dependency>
<groupId>info.cukes</groupId>
<artifactId>cucumber-junit</artifactId>
<version>1.2.2</version>
<scope>test</scope>
</dependency>
我的 CucumberTestRunner.java 文件包含以下内容:
package CucumberRunner;
import org.junit.runner.RunWith;
import cucumber.api.CucumberOptions;
import cucumber.api.junit.Cucumber;
@RunWith(Cucumber.class)
@CucumberOptions(
features = "CucumberFeaturesFolder/CucumberFeatureFile.feature",
glue = {"src/test.java/CucumberTestDefinition"}
)
public class CucumberTestRunner {}
我尝试运行 CucumberFeatureFile.feature 时遇到的错误如下:
cucumber.runtime.CucumberException: 无法实例化类 CucumberTestDefinition.CucumberStepDefinition
现在,在阅读了 StackOverflow 上提到的类似帖子后,我尝试将 cucumber-unit 和 cucumber-java 的版本从 1.2.2 更改为 1.2.0,这也导致了错误,但结果不同:
线程“main” cucumber.runtime.CucumberException 中的异常:未找到后端
【问题讨论】:
-
将 CucumberFeaturesFolder 移动到 src\test\resources 中。 “功能”选项将变为“src/test/resources/CucumberFeaturesFolder/CucumberFeatureFile.feature”。 'glue' 选项是根据 java 包定义的 - “CucumberTestDefinition”。将 junit 和 cucumber 升级到最新版本。试一试...
-
@Grasshopper 感谢您的回复。我尝试了你的建议。我收到以下错误:线程“主”java.lang.IllegalArgumentException 中的异常:不是文件或目录:/Users/Saket/Documents/workspace/com.learnautomation.cucumber/CucumberFeaturesFolder/CucumberFeatureFile.feature
-
@Grasshopper 我也尝试将 cucumber 和 junit 升级到 1.2.5,没有帮助。
标签: java maven selenium-webdriver cucumber