我最近通过将Cucumber依赖项从4.3.1升级到4.7.0来升级了基于Cucumber / Java的测试工具。现在,Eclipse报告已弃用了Then标签。例如,在我的“步骤定义”类中,Eclipse报告了一个警告,指示在此方法旁边不建议使用“然后”类型:
@Then("Invoke the Functional API")
public void invoke_the_functional_api(DataTable dataTable) {
/* Body of step definition */
}
此步骤定义的主体未引用任何其他步骤定义。通常,当我看到不赞成使用的警告时,我将研究如何用更多最新代码替换不赞成使用的用法,但是在这种情况下我无法弄清楚。有人知道吗?
答案 0 :(得分:4)
不建议使用标签本身。导入是。您需要将导入语句更新为新的导入。
” 不推荐使用的类的迁移信息(自cucumber-jvm v4.5.x起):
导入io.cucumber.junit.CucumberOptions
导入io.cucumber.junit.Cucumber
您可以使用io.cucumber.java8.En替换java8 lambda导入
还有带有io.cucumber.java.en.Given的Java
如果通过IDEA运行,请在运行配置中更改主类:io.cucumber.core.cli.Main。”
在黄瓜文档中发布的链接:https://github.com/cucumber/docs.cucumber.io/issues/142#issuecomment-508719509
答案 1 :(得分:1)
此步骤定义的主体未引用任何其他步骤定义。通常,当我看到不赞成使用的警告时,我将研究如何用更多最新代码替换不赞成使用的用法,但是在这种情况下我无法弄清楚。有人知道吗?
在IDE中,您可以使用ctrl + Click
或fn + Click
移至元素的源代码。然后,您的IDE通常还会询问您是否要下载源代码。你应该做这个。源代码中的Javadoc将告诉您要迁移到的推荐类。
答案 2 :(得分:-1)
谢谢..
导入io.cucumber.java.en。*;
当我导入以上行时,我的错误消失了。