当前位置: 首页 > 面试题库 >

Selenium WebDriver鼠标操作moveToElement不会在Firefox Linux上引发mouseout事件

淳于功
2023-03-14
问题内容

我一直在尝试使用带有Firefox 19的Selenium WebDriver在我的网页中测试工具提示。
我基本上是在尝试使用鼠标动作将鼠标悬停在附加有工具提示的元素上,以测试工具提示的显示和悬停。在另一个元素上以测试工具提示是否隐藏。第一个操作工作正常,但是将鼠标悬停在另一个元素上时,工具提示仍然可见。手动测试网页时不会发生此问题。
有人遇到过这个问题吗?我正在使用Ubuntu 12.04。


问题答案:

看来Advanced Actions
API依赖于本机事件,默认情况下,Linux版本的Firefox中禁用了本机事件。因此,必须在WebDriver实例中显式启用它们。

FirefoxProfile profile = new FirefoxProfile();
//explicitly enable native events(this is mandatory on Linux system, since they
//are not enabled by default
profile.setEnableNativeEvents(true);
WebDriver driver = new FirefoxDriver(profile);
另外,就我而言,我需要将WebDriver升级到2.31版,因为 moveToElement即使显式启用了本机事件,hover()操作也无法在2.30上正常工作。在Linux上使用WebDriver的2.31版和Firefox的17和19版对此进行了测试。有关更多信息,您可以检查以下链接: http
//code.google.com/p/selenium/wiki/AdvancedUserInteractions#Native_events_versus_synthetic_events


 类似资料:
  • 本文向大家介绍python+selenium 鼠标事件操作方法,包括了python+selenium 鼠标事件操作方法的使用技巧和注意事项,需要的朋友参考一下 一、前言 除了可以使用 click( ) 来模拟鼠标的单击操作,现在Web产品中还提供了更丰富的鼠标交互方式,例如鼠标右键、双击、悬停、拖动等功能,在WebDriver中,将这些关于鼠标操作的方法都封装在 ActionChains 类中。

  • 我使用的是铬58,硒3.4.0。

  • 我有一系列使用d3创建的行。我写了一些和事件事件。 当I时,事件通过增加行的值正常工作。 但是在上,在我编写代码的地方,事件不能正常工作,将值设置为初始值。 小提琴 帮我修一下。

  • 我使用形状和画布,我想做一些像地图编辑器的东西。当鼠标在画布上移动时,我会在每次移动时将实际选定的对象绘制到画布上的鼠标位置,以便使用该程序的用户可以看到该对象放置在画布上时的外观。 单击鼠标,我将当前对象/位置添加到列表中,其中包含每次更新都需要在画布上绘制的放置元素。 问题是,如果鼠标移动处理程序处于活动状态(绑定到画布),那么click事件不会一直触发,我需要连续单击大约十次来放置元素。如果

  • 本文向大家介绍IE中鼠标经过option触发mouseout的解决方法,包括了IE中鼠标经过option触发mouseout的解决方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了IE中鼠标经过option触发mouseout的解决方法。分享给大家供大家参考。具体分析如下: 要实现的功能: 有一个DIV,当鼠标经过时此DIV完全展开,当鼠标移开时DIV收缩回去,其中DIV里面有一个sel

  • 在本章中,我们将详细介绍鼠标事件及其属性。 请注意:此类事件不仅可能来自于“鼠标设备”,还可能来自于对此类操作进行了模拟以实现兼容性的其他设备,例如手机和平板电脑。 鼠标事件类型 我们已经见过了其中一些事件: mousedown/mouseup 在元素上点击/释放鼠标按钮。 mouseover/mouseout 鼠标指针从一个元素上移入/移出。 mousemove 鼠标在元素上的每个移动都会触发此