Cucumber V4 [io.cucumber] 未识别 @Given/When/Then 并给出错误 "The import cucumber.api.java.en.When cannot be resolved"
Cucumber V4 [io.cucumber] is not identifying @Given/When/Then and giving error "The import cucumber.api.java.en.When cannot be resolved"
我正在从 Cucumber 版本 1.2.4 [<groupId>info.cukes</groupId>
] 迁移到 V.4.2.2 <groupId>io.cucumber</groupId>
。在此之后,Cucumber Framework 无法识别 @Given/When/Then
注释并给出错误 – The import cucumber.api.java.en.Given/When/Then
cannot be resolved
Eclipse 建议添加以下依赖项。但我的想法是,当我迁移到 Cucumber V4(io.cucumber
) 时,为什么还要添加 V1.2.4(info.cukes
) 的依赖项。有人可以建议我应该在 V4 i.cucumber 下添加哪个是正确的依赖项。我应该添加哪个导入来解决这个问题。不加info.cukes
-> cuucmber-java
(1.2.4)
能解决吗
<dependency>
<groupId>info.cukes</groupId>
<artifactId>cucumber-java</artifactId>
<version>1.2.4</version>
</dependency>
下面是我在 POM.xml 下添加的依赖项列表。都是 io.cucumber 依赖项。
<dependency>
<groupId>io.cucumber</groupId>
<artifactId>cucumber-core</artifactId>
<version>4.2.2</version>
</dependency>
<dependency>
<groupId>io.cucumber</groupId>
<artifactId>cucumber-java</artifactId>
<version>4.2.2</version>
</dependency>
<dependency>
<groupId>io.cucumber</groupId>
<artifactId>cucumber-junit</artifactId>
<version>4.2.2</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>io.cucumber</groupId>
<artifactId>cucumber-jvm-deps</artifactId>
<version>1.0.6</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>io.cucumber</groupId>
<artifactId>gherkin</artifactId>
<version>6.0.14</version>
</dependency>
<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-all</artifactId>
<version>1.10.19</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>io.cucumber</groupId>
<artifactId>cucumber-testng</artifactId>
<version>2.0.0</version>
</dependency>
<dependency>
<groupId>io.cucumber</groupId>
<artifactId>cucumber-picocontainer</artifactId>
<version>2.1.0</version>
<scope>test</scope>
</dependency>
请帮助我了解如何在 Cucumber v4 下解决此错误。我不想使用 info.cukes maven id,因为它没有 V4。所以请指导
我已经解决了问题并分享了正确的依赖集。请根据您的框架要求添加 JUnit/TestNG。
<dependency>
<groupId>io.cucumber</groupId>
<artifactId>cucumber-java</artifactId>
<version>4.2.3</version>
</dependency>
<dependency>
<groupId>io.cucumber</groupId>
<artifactId>cucumber-junit</artifactId>
<version>4.2.3</version>
<scope>test</scope>
</dependency>
<!-- https://mvnrepository.com/artifact/junit/junit -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
<scope>test</scope>
</dependency>
<!-- https://mvnrepository.com/artifact/io.cucumber/datatable -->
<dependency>
<groupId>io.cucumber</groupId>
<artifactId>datatable</artifactId>
<version>1.1.12</version>
</dependency>
<!-- https://mvnrepository.com/artifact/io.cucumber/cucumber-testng -->
<dependency>
<groupId>io.cucumber</groupId>
<artifactId>cucumber-testng</artifactId>
<version>4.2.3</version>
</dependency>
<!-- https://mvnrepository.com/artifact/io.cucumber/cucumber-picocontainer -->
<dependency>
<groupId>io.cucumber</groupId>
<artifactId>cucumber-picocontainer</artifactId>
<version>4.2.3</version>
<scope>test</scope>
</dependency>
Maven 看起来停止了 <groupId>info.cukes</groupId>
cucumber-java,而不是使用 <groupId>io.cucumber</groupId>
.
因此,从 (<groupId>io.cucumber</groupId><artifactId>cucumber-java</artifactId>
) 的 4.7.0 版本开始,不再支持 cucumber.api.java.en.Given/When/Then
。
可以用import io.cucumber.java.en.Given(/When/Then)
代替。
我也遇到过这个问题。替换后 cucumber.api.java.en.Given/When/Then
和
导入 io.cucumber.java.en.Given(/When/Then)
特征文件是运行映射方法
我正在从 Cucumber 版本 1.2.4 [<groupId>info.cukes</groupId>
] 迁移到 V.4.2.2 <groupId>io.cucumber</groupId>
。在此之后,Cucumber Framework 无法识别 @Given/When/Then
注释并给出错误 – The import cucumber.api.java.en.Given/When/Then
cannot be resolved
Eclipse 建议添加以下依赖项。但我的想法是,当我迁移到 Cucumber V4(io.cucumber
) 时,为什么还要添加 V1.2.4(info.cukes
) 的依赖项。有人可以建议我应该在 V4 i.cucumber 下添加哪个是正确的依赖项。我应该添加哪个导入来解决这个问题。不加info.cukes
-> cuucmber-java
(1.2.4)
<dependency>
<groupId>info.cukes</groupId>
<artifactId>cucumber-java</artifactId>
<version>1.2.4</version>
</dependency>
下面是我在 POM.xml 下添加的依赖项列表。都是 io.cucumber 依赖项。
<dependency>
<groupId>io.cucumber</groupId>
<artifactId>cucumber-core</artifactId>
<version>4.2.2</version>
</dependency>
<dependency>
<groupId>io.cucumber</groupId>
<artifactId>cucumber-java</artifactId>
<version>4.2.2</version>
</dependency>
<dependency>
<groupId>io.cucumber</groupId>
<artifactId>cucumber-junit</artifactId>
<version>4.2.2</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>io.cucumber</groupId>
<artifactId>cucumber-jvm-deps</artifactId>
<version>1.0.6</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>io.cucumber</groupId>
<artifactId>gherkin</artifactId>
<version>6.0.14</version>
</dependency>
<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-all</artifactId>
<version>1.10.19</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>io.cucumber</groupId>
<artifactId>cucumber-testng</artifactId>
<version>2.0.0</version>
</dependency>
<dependency>
<groupId>io.cucumber</groupId>
<artifactId>cucumber-picocontainer</artifactId>
<version>2.1.0</version>
<scope>test</scope>
</dependency>
请帮助我了解如何在 Cucumber v4 下解决此错误。我不想使用 info.cukes maven id,因为它没有 V4。所以请指导
我已经解决了问题并分享了正确的依赖集。请根据您的框架要求添加 JUnit/TestNG。
<dependency>
<groupId>io.cucumber</groupId>
<artifactId>cucumber-java</artifactId>
<version>4.2.3</version>
</dependency>
<dependency>
<groupId>io.cucumber</groupId>
<artifactId>cucumber-junit</artifactId>
<version>4.2.3</version>
<scope>test</scope>
</dependency>
<!-- https://mvnrepository.com/artifact/junit/junit -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
<scope>test</scope>
</dependency>
<!-- https://mvnrepository.com/artifact/io.cucumber/datatable -->
<dependency>
<groupId>io.cucumber</groupId>
<artifactId>datatable</artifactId>
<version>1.1.12</version>
</dependency>
<!-- https://mvnrepository.com/artifact/io.cucumber/cucumber-testng -->
<dependency>
<groupId>io.cucumber</groupId>
<artifactId>cucumber-testng</artifactId>
<version>4.2.3</version>
</dependency>
<!-- https://mvnrepository.com/artifact/io.cucumber/cucumber-picocontainer -->
<dependency>
<groupId>io.cucumber</groupId>
<artifactId>cucumber-picocontainer</artifactId>
<version>4.2.3</version>
<scope>test</scope>
</dependency>
Maven 看起来停止了 <groupId>info.cukes</groupId>
cucumber-java,而不是使用 <groupId>io.cucumber</groupId>
.
因此,从 (<groupId>io.cucumber</groupId><artifactId>cucumber-java</artifactId>
) 的 4.7.0 版本开始,不再支持 cucumber.api.java.en.Given/When/Then
。
可以用import io.cucumber.java.en.Given(/When/Then)
代替。
我也遇到过这个问题。替换后 cucumber.api.java.en.Given/When/Then 和 导入 io.cucumber.java.en.Given(/When/Then)
特征文件是运行映射方法