我正在尝试使用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)?