selenium - 如何处理 Cucumber AmbiguousStepDefinitions 异常?

标签 selenium selenium-webdriver cucumber cucumber-java

目前我正在运行一系列使用以下步骤的测试:

 @And("^I select (.*) as a subject type$")
    public void click_on_subject_type(String subject) {
        String subjectType = String.format("//*[text()='%s']", subject);
        waitAndClickUsingByLocator(By.xpath(subjectType), Global_Vars.DEFAULT_TIMEOUT);
    }

    @And("^I select (.*)$")
    public void click_on_level(String level) {
        String subjectType = String.format("//*[text()='%s']", level);
        waitAndClickUsingByLocator(By.xpath(subjectType), Global_Vars.DEFAULT_TIMEOUT);
    }

在执行我的代码时,它似乎抛出异常:cucumber.runtime.AmbiguousStepDefinitionsException:标记上面列出的两个步骤。

我还在步骤定义中添加了 ^ $ 但是问题仍然存在,有什么解决这个问题的想法吗?

最佳答案

为了快速简便地修复,您只需将第二步重命名为: @And("^我选择(.*)作为关卡$")

这也让我们更容易理解场景。

关于selenium - 如何处理 Cucumber AmbiguousStepDefinitions 异常?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54691180/

相关文章:

java - 有没有办法避免具有不同背景的重复 Cucumber 场景?

ruby-on-rails - 来自 cucumber 的 HTTP POST XML 内容

c# - 将 cefSharp 客户端与 Selenium Chrome 驱动程序绑定(bind) c#

node.js - 在 Protractor 中为 e2e 测试设置 https 代理

python - WebDriver:为什么 send_keys 在 find_element_by_xpath 之后不起作用?

java - 使用 xvfb-run (Selenium WebDriver) 发出运行 firefox 的问题

c# - 将不断增长的页面滚动到底部

Java - Selenium WebElement isDisplayed() 方法不可用

java - eclipse - 包 org.testng 不存在

java - Cucumber 和/或 RSpec 与使用 JRuby 的纯 Java 应用程序