0

我正在使用 cucumber 来测试我的 rails 应用程序。

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

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>
4

2 回答 2

0

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

于 2012-04-25T19:19:19.740 回答
0

标签中的这个 html 可能会混淆匹配器:

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

您可以指定字段的 id:

When I fill in "user_email" with "example@example.com"
于 2012-06-22T13:58:02.030 回答