找到多个定义...我有 2 个相似的定义

Multiple definitions found... I have 2 definitions that are similar

我正在 运行Cucumber-JVM 和 Maven 范围内进行一套测试自动化测试。我已经指定了我的步骤定义和胶水,所以那里没有问题。

问题是关于 2 个类似的步骤定义,我的 IDE 和 Maven 抱怨似乎与错误有关:

Multiple definitions found for `some-action-i-want-to-do "actionName" with-specifics "specificsName"`

我的两个 Step Functions 是这样写的:

@Given("^some-action-i-want-to-do \"(.*)\"$")
public void someActionIWantToDo(String p1) {
  ... etc
}
@Given("^some-action-i-want-to-do \"(.*)\" with-specifics \"(.*)\" $")
public void someActionIWantToDoWithSpecifics(String p1, String p2) {
  ... etc
}

所以,自然而然地,当我 运行 Maven 套件时,我看到警告...任何人都可以建议我可以停止或抑制这些警告的方法吗?

因为第一个正则表达式中的.*,它也会匹配some-action-i-want-to-do "actionName" with-specifics "specificsName"

如果您的 actionName 仅由字母和数字组成,请考虑使用 \w+

^some-action-i-want-to-do \"(\w+)\"$

因此它不接受空格或双引号。