【发布时间】:2013-08-06 17:42:19
【问题描述】:
我在我测试的应用程序中有几个菜单,需要将鼠标悬停在顶部菜单项上,才能显示菜单的其余部分(将其下拉)。
顶部菜单项如下所示:
<li>
<a href="javascript:void(0)">>
<span>Orders</span>
在过去的 3 或 4 个月里,我一直使用这些代码行,没有任何问题:
WebElement webElement = driver.findElement(By.xpath("//li/a[span[text()='Orders']]"));
new Actions(driver).moveToElement(webElement).build().perform();
这会将鼠标悬停在“订单”菜单项上,然后允许我选择下拉项目之一。
我现在使用的是 FF21 和 WebDriver 2.33,悬停不再起作用。 “订单”菜单项将悬停在上方,菜单将下拉,但也会立即再次卷起。这会阻止我选择子菜单项。
到目前为止我已经尝试过:
- 在上述代码之后添加了一个等待,以允许我选择子菜单项: 没用
- 在我正在使用的 firefox 配置文件中启用了本机事件: 行为没有改变
非常感谢任何帮助,因为我在没有可用菜单系统的情况下死在水中。
顺便说一句:这段代码确实在 IE 中工作,所以它似乎是 FF 特有的问题?
【问题讨论】:
-
当菜单回滚时,鼠标是否仍然位于“订单”菜单项上方 - 还是已经移开?还有一个很明显的问题,但我们不得不问:你在FF21中手动测试时有同样的问题吗?
-
我可以确认问题存在于 FF21 + selenium-webdriver 2.33 中。我还发现了 code.google.com/p/selenium/issues/detail?id=4893 的错误
-
@vincebowdren :手动工作正常。使用 webdriver 时光标(指针)不可见
-
@zerkms :感谢指向该缺陷的指针。尽管开发人员似乎只认为这是“中等”优先级:-p
标签: java firefox webdriver mousehover