找不到带有id,name或标签的文本字段,文本区域或密码字段(Capybara :: ElementNotFound)

时间:2012-04-25 16:33:23

标签: html ruby-on-rails cucumber

我正在使用黄瓜测试我的导轨应用程序。

要填写表格,我在黄瓜中使用“填写”步骤:

When /^(?:|I )fill in "([^"]*)" with "([^"]*)"(?: within "([^"]*)")?$/ do |field, value, selector|
  with_scope(selector) do
    fill_in(field, :with => value)
  end
end

我有一个页面 我想用“example@example.com”填写“电子邮件地址”:

当我用“example@example.com”填写“电子邮件地址”时

但是其中一个页面出现以下错误:

没有找到ID,名称或标签的文本字段,文本区域或密码字段'Capybara :: ElementNotFound

有什么想法,html代码中缺少什么?或问题是与不匹配的版本?

这是该页面的html代码的一部分,我收到错误:

<p class=" medium text email_wrapper required">
 <label for="user_email">Email Address<span class="required">*</span></label> <br />
 <input class=" medium text" id="user_email" name="user[email]" size="30" type="text" /><br />
 <span class=" note">Must be valid. Privacy is guaranteed.</span>
</p>

2 个答案:

答案 0 :(得分:0)

您确定您的正则表达式有效吗?好像它不起作用。 http://rubular.com/r/RUIKYIk5Wb

答案 1 :(得分:0)

标签中的这个html可能会让匹配者感到困惑:

<span class="required">*</span>

您可以改为指定字段的ID:

When I fill in "user_email" with "example@example.com"