我用Selenium配置了Cucumber,我添加了所有功能,类定义,测试定义。当我执行代码时,它会引发错误说明-
我已经尝试检查黄瓜和黄瓜的版本,我使用黄瓜4和黄瓜4。我也尝试了黄瓜6的版本。没用
java.lang.NoClassDefFoundError: gherkin/deps/com/google/gson/Gson
at gherkin.GherkinDialectProvider.
<clinit>(GherkinDialectProvider.java:17)
at gherkin.TokenMatcher.<init>(TokenMatcher.java:25)
它应该显示功能。
答案 0 :(得分:0)
小黄瓜是一个传递依赖,我们不会在pom.xml中明确添加
关键点::我们不会混合使用直接和传递依赖,特别是它们的版本!这样做可能导致不可预测的结果。
解决方案::如果要添加以下依赖项,请删除。 cucumber-core , cucumber-java , cucumber-jvm-deps , Gerkin 和 Junit 强>。它们是可传递的依赖项,将由您的依赖项提供。
您可以添加以下一组黄瓜最小依赖项。
<dependency>
<groupId>io.cucumber</groupId>
<artifactId>cucumber-junit</artifactId>
<version>4.0.0</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>io.cucumber</groupId>
<artifactId>cucumber-picocontainer</artifactId>
<version>4.0.0</version>
<scope>test</scope>
</dependency>
通过
保存pom.xml并在项目级别同步新的依赖项最后运行mvn clean测试。
答案 1 :(得分:0)
我已经尝试检查黄瓜和黄瓜的版本,我使用黄瓜4和黄瓜4。我也尝试了黄瓜6的版本。没用
您尝试过5次吗?