Я намагаюся вибрати пункт із випадаючого меню за допомогою Capybara (2.1.0).
Я хочу вибрати за номером (тобто вибрати другий, третій варіант тощо).
Я гугла, як божевільний, пробуючи всілякі речі, але не пощастило.
Я зміг вибрати його за допомогою значення:
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)?