如何对Capybara的野外内容做出预期

时间:2013-09-17 09:09:01

标签: regex cucumber capybara

我正在尝试编写一些测试来验证表单是否正确的字段。

我看到了一些带有“page.should ...”和“断言页面......”的片段,但我不能谷歌明确说明可以使用什么以及如何使用它。

另外,我想知道是否可以在字段内容或字符串中使用正则表达式。

1 个答案:

答案 0 :(得分:3)

随着时间的推移,有各种各样的rspec匹配器。我相信现在最受欢迎的是rspec-expectations。您可以将其与Capybara matchers

结合使用

要检查文本字段是否具有特定值,您可以执行以下操作:

expect(page).to have_field('field_id', :with => 'test')

have_field就像其他的Capybara finder方法一样。 ' FIELD_ID'可以是字段的ID,名称或标签。 '测试'是文本字段应具有的值。

上述内容也可以通过以下方式完成,但阅读效果不佳。

expect(find_field('field_id').value).to eq('test')

对于正则表达式匹配,我不相信你可以使用第一个例子。你将不得不使用匹配方法使用后者:

expect(find_field('field_id').value).to match(/te/)