如何使用Rspec / Capybara检查span标签中是否有特定的文本?

时间:2012-06-26 03:06:16

标签: ruby-on-rails rspec capybara

我目前正在使用以下部分进行编码,以检查我的网页是否有特定的文字:

it { should have_selector('test_container', text: 'hiya') }

我正在检查的是我页面上的一个范围:

<span id="test_container">hiya</span>

我该如何测试这样的特定span标签的内容?我不想在整个页面上查看“hiya”文本,而是查看上面的特定span标记。

谢谢!

1 个答案:

答案 0 :(得分:3)

Capybara在这里为您提供了两种可能性,您可以使用find方法:

find('#text_container').should have_content('hiya')

或者您可以确定将块限制为html容器:

within '#text_container' do
  page.should have_content 'hiya'
end

请注意,尽管您在块中说page.should,但它仅限于作用域元素。