Ich versuche, mit Capybara (2.1.0) einen Eintrag aus einem Dropdown-Menü auszuwählen.
Ich möchte nach Nummer auswählen (dh die zweite, dritte usw. Option auswählen).
Ich habe wie verrückt gegoogelt und alle möglichen Dinge ausprobiert, aber kein Glück.
Ich konnte es mit dem Wert auswählen:
find("option[value='4c430d62-f1ba-474f-8e8a-4452c55ea0a8']").click
Aber ich möchte diese Methode nicht verwenden, da sich der Wert ändert und mein Test spröde wird.
Der HTML-Code für das Dropdown-Menü lautet:
<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>
Ich habe es auch versucht:
option = find(:xpath, "//*[@id='organizationSelect']/option[2]").text
select(option, :from => organizationSelect)
Aber es führt zu diesem Fehler:
Ambiguous match, found 2 elements matching option "Institution" (Capybara::Ambiguous)
Wie kann ich also die erste, zweite, dritte usw. Option aus der Dropdown-Liste auswählen (mit Capybara)?