gpt4 book ai didi

java - Cucumber 升级后运行测试的问题

转载 作者:搜寻专家 更新时间:2023-11-01 03:45:43 24 4
gpt4 key购买 nike

智能
java
cucumber

升级到最新的 Cucumber 版本后,我的测试不再运行。我一直在这里来回,毫无疑问地验证了问题是在Cucumber升级后出现的。

尝试在 IntelliJ 中本地运行 Cucumber 测试场景时,我得到以下信息:

No tests were found

以及以下警告和错误:

Aug 28, 2019 10:02:00 AM cucumber.api.cli.Main run
WARNING: You are using deprecated Main class. Please use io.cucumber.core.api.cli.Main
Aug 28, 2019 10:02:02 AM cucumber.runtime.Runtime run
SEVERE: Exception while executing pickle
java.util.concurrent.ExecutionException:
java.lang.IncompatibleClassChangeError: Found interface cucumber.api.TestCase, but class was expected
at cucumber.runtime.Runtime.run(Runtime.java:114)
at io.cucumber.core.cli.Main.run(Main.java:43)
at cucumber.api.cli.Main.run(Main.java:28)
at cucumber.api.cli.Main.main(Main.java:15)

只有当我尝试直接/手动运行测试场景时才会出现这种情况。即,右键单击场景并选择“运行”或“调试”。如果我运行我的 CucumberTest.java 文件,它就可以工作。

我已经清除缓存并重新启动,没有任何变化。我还更改了 CucumberTest 类中的导入:

//import cucumber.api.CucumberOptions;
import io.cucumber.junit.CucumberOptions;
//import cucumber.api.junit.Cucumber;
import io.cucumber.junit.Cucumber;

有什么想法吗?我意识到错误消息意味着从编译时到运行时发生了一些变化,而且 cucumber.api.TestCase 似乎从类到接口(interface)。但我无法理解它,也找不到这显然发生的地方。

最佳答案

我在 Windows 上使用 IntelliJ、Java、Cucumber 时遇到了类似的问题。 JetBrains 上有一份错误报告建议通过在将 Shorten command line 选项设置为 JAR manifest 的同时运行测试来解决此问题。这对我有用!

https://youtrack.jetbrains.com/issue/IDEA-220676

关于java - Cucumber 升级后运行测试的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57687942/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com