我有一个带有确认字段的表单页面,其中包含电子邮件地址和密码,两者都带有“确认”标签。如预期的那样,使用RSpec运行时会失败。如果我使标签唯一,例如将电子邮件标签更改为“电子邮件确认”,则该标签将通过。我宁愿让标签保持不变。如果我使用form_for生成的电子邮件ID,水豚似乎很高兴,但测试失败。我也试着用相同的结果命名。水豚不会填写有重复标签的字段
RSpec的/水豚提取物:
fill_in "company_contact_email_confirmation", with: "[email protected]"
的form_for提取物:
<div class="field">
<%= f.label :contact_email_confirmation, "Confirmation" %><br />
<%= f.email_field :contact_email_confirmation %>
</div>
生成的源:
<div class="field">
<label for="company_contact_email_confirmation">Confirmation</label><br>
<input id="company_contact_email_confirmation" name="company[contact_email_confirmation]" size="30" type="email">
</div>
错误消息:
1)公司的网页立即登记与VA盖信息应该创建一个公司
Failure/Error: expect { click_button submit }.to change(Company, :count).by (1)
count should have been changed by 1, but was changed by 0
如果我用的水豚within
,因为已经建议其他地方在这里,它仍然不能正常工作:
RSpec的/水豚提取物:
within ".email_stuff" do
fill_in "Confirmation", with: "[email protected]"
end
的form_for提取物:
<div class="email_stuff">
<div class="field">
<%= f.label :contact_email_confirmation, "Confirmation" %><br />
<%= f.email_field :contact_email_confirmation %>
</div>
</div>
生成源:
<div class="email_stuff">
<div class="field">
<label for="company_contact_email_confirmation">Confirmation</label><br />
<input id="company_contact_email_confirmation" name="company[contact_email_confirmation]" size="30" type="email" />
</div>
</div>
水豚似乎没有抱怨,但测试失败,同样的错误。我如何让水豚允许我在同一表格上使用同一标签两次?
仅用于测试,在您定义测试的位置添加此“:js => true”以可视化浏览器中会发生的情况(将出现一个页面) – cristian
我在使用硒webdriver时遇到了很多麻烦与Firefox一起运行。经过很多努力,(最终火狐10和硒webdriver 2.20.0)我得到一个页面弹出“无法维护安全连接”或类似的东西,然后立即关闭。测试然后在第一个fill_in字段上的Capybara :: ElementNotFound上失败,这是不正确的,因为没有测试通过的重复标签。 –