Как мне найти первый флажок в Капибаре? - PullRequest
8 голосов
/ 18 мая 2011

Я бы хотел найти первый экземпляр флажка с использованием капилбары dsl.Кто-нибудь знает, как это сделать?

Я думал, возможно, это будет так, но это не сработало:

find('input:first', :type => 'checkbox')

Ответы [ 3 ]

19 голосов
/ 19 мая 2011

Если для Capybara.default_selector задано значение CSS, то:

find("input[type='checkbox']")

Если вы используете XPath, оно будет другим.

Обновление (июнь 2013 г.): как указывает @tmg, поведение Capybara 2 изменилось.

11 голосов
/ 08 апреля 2013

Просто чтобы указать tmg , правильный способ найти первый флажок

first("input[type='checkbox']")

Если вы хотите найти n-й Флажок (например, 25-й):

find(:xpath, "(//input[@type='checkbox'])[25]")

Но часто лучше использовать в , чтобы сузить область поиска

within 'div.div_class' do
  find("input[type='checkbox']")
end
0 голосов
/ 21 мая 2019

Наименьший ненадежный способ найти первый флажок может быть:

find("input[type='checkbox']", match: :first)
...