Capybara expect page to have content more than once

tonatiuhnb picture tonatiuhnb · Sep 17, 2015 · Viewed 10k times · Source

Does anybody know how to find if a page has a text more than once?

I know I can use

expect(page).to have_content("my-text")

to check if text appears once. However, I need something like

expect(page).to have_content("my-text").twice

(which doesn't work).

I'm using capybara v2.1.0.

Answer

Thomas Walpole picture Thomas Walpole · Sep 17, 2015
expect(page).to have_content("my-text", count: 2)

will do what you want in modern versions of Capybara, not sure if that will work in 2.1 but worth trying (2.1 is over 2 years old now)

Update: In Capybara 3.19+ this can also now be written

expect(page).to have_content("my-text").twice