【问题标题】:Selecting from the option list in "select2" in IE8 with webdriver使用 webdriver 从 IE8 中“select2”中的选项列表中进行选择
【发布时间】:2013-11-07 14:36:03
【问题描述】:
我在使用 Selenium WebDriver 模拟 IE8 中“select2”中的选项列表进行选择时遇到了一个问题。问题是从不可见的下拉元素中进行选择(需要滚动)。
我尝试的另一种方法是将字符串发送到输入并在之后找到它 - 没有成功,字符串被发送到输入但选项列表不会被输入的字符串更新。
【问题讨论】:
标签:
java
internet-explorer-8
webdriver
selenium-webdriver
jquery-select2
【解决方案1】:
我不能 100% 确定这是否适用于 IE8,但请尝试先跳过单击选择元素的步骤,直接单击要选择的选项元素。
不能保证,但这种方法适用于较新的浏览器,在这些浏览器中,从下拉菜单中选择选项有些奇怪,因为您不必(事实上,如果您不这样做,效果会更好)复制确切的用户行为。
【解决方案2】:
与不可见元素交互有两种方式:
首先:使用 Selenium api 将元素置于视图中,然后与之交互。以下是针对 Ruby 的。 Java中必须有方法来实现这一点。
element.location_once_scrolled_into_view
第二:在元素上执行javascript:
driver.execute_script('arguments[0].click();', element)
以上是针对 Ruby 的。但是逻辑会帮助你实现你想要的。