Подтвердить что ты не робот

Capybara ожидает, что страница будет иметь контент более одного раза

Кто-нибудь знает, как найти, если страница имеет текст более одного раза?

Я знаю, что могу использовать

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

чтобы проверить, появляется ли текст один раз. Однако мне нужно что-то вроде

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

(который не работает).

Я использую capybara v2.1.0.

4b9b3361

Ответ 1

expect(page).to have_content("my-text", count: 2)

будет делать то, что вы хотите в современных версиях Capybara, не уверен, что это будет работать в 2.1, но стоит попробовать (2.1 уже более 2 лет)

Обновление: в Capybara 3. 19+ это также теперь можно записать

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

Ответ 2

Если вы хотите, чтобы текст показывался не менее 2 раз (или 2 раза и более), вы должны использовать минимум вместо подсчета.

expect(page).to have_text(/my-text/, minimum: 2)