西班牙语中的黄瓜步骤定义:“......”的模糊匹配

时间:2012-08-22 20:01:51

标签: ruby-on-rails testing cucumber capybara gherkin

我正在尝试将黄瓜的步骤定义翻译成西班牙语,但我收到了这个错误:

Ambiguous match of "que estoy en la página "inicio de sesión""


  features/step_definitions/web_steps.rb:3:in `/^que estoy en la página "([^"]*)"$/'
  features/step_definitions/web_steps.rb:7:in `/^visito la pa|ágina "([^"]*)"$/'

这是我的web_steps.rb

# encoding: utf-8

Dado /^que estoy en la página "([^"]*)"$/ do |page|
  visit(path_to page)
end

Cuando /^visito la página "([^"]*)"$/ do |page|
  visit(path_to page)
end

如果我在正则表达式中得到^和$,那怎么可能是ambiguos?

1 个答案:

答案 0 :(得分:1)

看起来它在后一步定义中看到|。仔细查看错误的第二行:

features/step_definitions/web_steps.rb:3:in `/^que estoy en la página "([^"]*)"$/'
features/step_definitions/web_steps.rb:7:in `/^visito la pa|ágina "([^"]*)"$/'

它看到/^visito la pa|ágina "([^"]*)"$/,它将其解释为OR,即/^visito la paágina "([^"]*)"$/。通过这种解释,这场比赛确实变得模棱两可。

现在为什么它以这种方式阅读对我来说是个谜,也许是一些UTF-8的杂物?