在selenium-webdriver中定位select list的方法比较简单,用id和name等属性可以很方便的将select给找出来,但是怎么去选择下拉框中的某一项呢?
思路是这样的,首先定位到select list元素,然后找出该select list下所有的option,点击该option element既可,以下面的html代码为例
<html> <head>
<title>Select</title>
</head>
<body>
<span>select demo</span>
<select id = "s" name = "ns">
<option value = "0">Op1</option>
<option value = "1">Op2</option>
<option value = "2">Op3</option>
<option value = "3">Op4</option>
</select>
</body>
</html>通过下面的代码可以选择到下拉框中的第2个option,也就是text为Op2的选项
require 'selenium-webdriver'
dr = Selenium::WebDriver.for :firefox
dr.navigate.to select_filedr.find_element(:id => 's').find_elements(:tag_name => 'option')[1].click