java - 找到多个定义...我有 2 个类似的定义

标签 java maven cucumber-jvm

我正在 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"和-species "specificsName"

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

^一些我想做的 Action \"(\\w+)\"$

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

关于java - 找到多个定义...我有 2 个类似的定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57307306/

相关文章:

maven - 使用 maven-remote-resources-plugin 并指定 resourcesDirectory

eclipse - Maven 和 Eclipse

intellij-idea - cucumber ,Java8 : find usage of step defined by lambda expression

java - 深度复制二维数组

java - 汉字Java的UTF编码

java - 如何在抽屉导航中显示图像

java - 如何使用 maven tomcat 插件从子 pom 向 Tomcat 部署 war?

java - Tomcat 中的 org.jasypt.exceptions.EncryptionOperationNotPossibleException

java - 从 StepDefs 访问 cucumber 测试

cucumber - 如何在我的 cucumber BDD 步骤定义中使 "the"可选?