Я пытаюсь выбрать элемент из выпадающего меню с помощью Capybara (2.1.0).
Я хочу выбрать по номеру (что означает выбор второй, третьей и т.д.).
У меня Googled как сумасшедший, пытающийся всевозможные вещи, но не повезло.
Мне удалось выбрать его, используя значение:
find("option[value='4c430d62-f1ba-474f-8e8a-4452c55ea0a8']").click
Но я не хочу использовать этот метод b/c, это значение изменится, и это сделает мой тест хрупким.
HTML для раскрывающегося списка:
<td class="value">
<select name="organizationSelect" id="organizationSelect" class="required">
<option value="NULL">Choose...</option>
<option value="4c430d62-f1ba-474f-8e8a-4452c55ea0a8"> Institution1</option>
<option value="e1a4efa7-352d-410a-957e-35c8a3b92944"> Institution / test</option>
</select>
</td>
Я также пробовал это:
option = find(:xpath, "//*[@id='organizationSelect']/option[2]").text
select(option, :from => organizationSelect)
Но это приводит к этой ошибке:
Ambiguous match, found 2 elements matching option "Institution" (Capybara::Ambiguous)
Итак, как я могу выбрать первую, вторую, третью и т.д. из раскрывающегося списка (используя Capybara)?