kak*_*ret 1 cucumber maven cucumber-jvm selenium-webdriver cucumber-java
我正在尝试将 Cucumber 4.5.x 的旧测试框架升级到更新版本。该项目是 Maven、IntelliJ、Java、Selenium 和 Cucumber 项目。
但 Cucumber 似乎要么故意误导我,要么他们的文档对我来说难以理解。
首先,我升级到版本 5.0.0,重新加载 Maven 依赖项并执行 mvn clean install。
我立即发现
import io.cucumber.core.api.Scenario was gone.
Run Code Online (Sandbox Code Playgroud)
经过一番手动搜索,我发现新的路径似乎是
import io.cucumber.core.gherkin.Scenario;
Run Code Online (Sandbox Code Playgroud)
然后我去了6.0.0版本,这里似乎没有任何场景库。
查看文档,似乎声称 Scenario 位于
io.cucumber.java.Scenario
Run Code Online (Sandbox Code Playgroud)
但这对于 4.5.x 版本来说甚至都不正确,那么我到底如何找到导入的新路径呢?
更新:
在尝试升级之前,我的插件列表中有以下内容:
io.cucumber:cucumber-core:4.5.2
io.cucumber:cucumber-expressions:7.0.2
io.cucumber:cucumber-dependencies:1.1.14
io.cucumber:cucumber-datatable_1.1.14
io.cucumber:cucumber.gherkin:5.1.0
io.cucumber:cucumber-tag-expressions:1.1.1
Run Code Online (Sandbox Code Playgroud)
在我的 pom.xml 中:
<properties>
<java.version>11</java.version>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<selenium.version>4.3.0</selenium.version>
<cucumber.version>4.5.2</cucumber.version>
<junit5.version>5.5.1</junit5.version>
</properties>
Run Code Online (Sandbox Code Playgroud)
更改 pom.xml 中的版本号并重新加载是正确的方法吗?或者我应该用项目插件列表中的较新版本替换该插件(在 IntelliJ 中)?
我应该升级任何其他 cucumber-x 插件吗?
替代方案 1:
我在 pom.xml 文件中将版本更改为 5.0.0。
构建项目:确定运行 mvn clean install -> 出现以下错误:
cannot find symbol
[ERROR] symbol: class Scenario
[ERROR] location: package io.cucumber.core.api
Run Code Online (Sandbox Code Playgroud)
当然,这是由于图书馆的变化造成的。
但是,当我尝试更换旧的
import io.cucumber.core.api.Scenario
Run Code Online (Sandbox Code Playgroud)
和
import io.cucumber.java.Scenario
Run Code Online (Sandbox Code Playgroud)
没有 .java 的匹配项。
我看不出我还能做什么?我错过了哪些导入,除了更新 pom.xml 和/或导入新插件之外,如何添加它们?
从 v4 到 v5 的跳跃相当大。造成这种情况的一个因素是模块系统的引入。您可以在发行说明文件夹中阅读有关此更改和其他更改的更多信息。
因此,对于 v5.x 及更高版本,假设您正在使用cucumber-java,则正确的导入是io.cucumber.java.Scenario. 如果您正在使用,cucumber-java8那么正确的导入是io.cucumber.java8.Scenario.
这两个导入均未显示,这表明您可能尚未将所有依赖项升级到同一版本。您可以使用mvn dependency:tree -Dverbose它来调试。
更高版本还引入了物料清单,以帮助您保持依赖项与单个版本号一致。
| 归档时间: |
|
| 查看次数: |
722 次 |
| 最近记录: |