我是 RSpec 和 Capybara 的新手,我正在尝试测试页面是否有时间。12:00 或 14:24 或 08:12 是我要测试的很好的例子。
我正在使用以下正则表达式:
/^\d{2}:\d{2}/
我不确定如何在 capybara 中“措辞”来测试页面是否包含此正则表达式。
我是 RSpec 和 Capybara 的新手,我正在尝试测试页面是否有时间。12:00 或 14:24 或 08:12 是我要测试的很好的例子。
我正在使用以下正则表达式:
/^\d{2}:\d{2}/
我不确定如何在 capybara 中“措辞”来测试页面是否包含此正则表达式。
我想像
page.text.should match(/^\d{2}:\d{2}/)
或者,使用新的 RSpec 语法
expect(page.text).to match(/^\d{2}:\d{2}/)
或者您可以测试的不是整个页面,而是某个元素,例如
find("span.time").text.should match(/^\d{2}:\d{2}/)
我不知道这是否是新行为,但您可以使用has_content?
:
page.has_content?(/do not have permission/i)
在 rspec 中,这将是这样的:
expect(page).to have_content(/do not have permission/i)
我在 capybara 的在线文档中找到了这个,但它只是一个别名。has_text?
has_content?