将select_list选项转换为watir-webdriver中的字符串数组?

Ala*_*ery 2 ruby watir watir-webdriver

我需要检查选择列表下拉列表的内容,这取决于另一个字段中的值.我正在将有效选项读入CVS字段中的字符串数组,并通过执行以下操作进行比较;

selectContent = []
$browser.select_list(:id,"srch-status-select").options.each {|option| selectContent << option.text}
assert_equal(validContent,selectContent,"Status drop down has wrong values")
Run Code Online (Sandbox Code Playgroud)

这是正确的还是现有的select_list方法进行类似的转换?

Mag*_*nar 10

没有方法可以完全按照您的要求进行操作,但更简洁的版本将是:

selectList = $browser.select_list(:id,"srch-status-select")
selectContent = selectList.options.map(&:text)
Run Code Online (Sandbox Code Playgroud)

  • 然后你使用旧版本的Ruby,它不支持符号进行处理.然后,您需要将`(&:text)`替换为`{| option | option.text}`...或更新Ruby. (2认同)