未定义步骤参考 InteliJ + Cucumber for Java + Maven 项目
Posted
技术标签:
【中文标题】未定义步骤参考 InteliJ + Cucumber for Java + Maven 项目【英文标题】:Undefined step reference InteliJ + Cucumber for Java + Maven project 【发布时间】:2019-06-07 21:20:19 【问题描述】:我在定义步骤并将其映射到场景时遇到问题。 我已经安装了 maven,设置了 java 的依赖项,并在 IntelliJ 中安装了 cucumber for java 插件和外部库。
这一步出现了3个错误: “从不使用课堂步骤” “从未使用过构造函数步骤” “语言级别不支持 Lambda 表达式”
这里的确切问题是什么?
import cucumber.api.PendingException;
public class Steps
public Steps()
Given("^I navigate to the login page$", () ->
// Write code here that turns the phrase above into concrete actions
throw new PendingException();
);
这是创建的步骤示例
【问题讨论】:
前两件事不是错误,而是警告,在 Cucumber 测试的上下文中可以安全地忽略这些警告。 另外,你的项目是什么语言级别的? 【参考方案1】:前两条消息只是警告 - 因为您创建了 Steps
类,但没有使用它(当然,也没有使用 Steps
类的构造函数)。
对于最后一个,您需要至少将语言级别更改为 8.0 - Lambdas, type annotations etc.
以允许使用 lambda 表达式(请参阅 this 和 this 答案)。
【讨论】:
以上是关于未定义步骤参考 InteliJ + Cucumber for Java + Maven 项目的主要内容,如果未能解决你的问题,请参考以下文章
Intelij idea 社区版(Community)下载安装使用