微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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

我一直在尝试使用Selenium WebDriver和Firefox 19在我的网页上测试工具提示.
我基本上试图使用鼠标操作将鼠标悬停在附加了工具提示的元素上,以便测试工具提示是否显示,并将鼠标悬停在另一个元素上以测试工具提示是否隐藏.
一个操作正常,但当悬停在另一个元素上时,工具提示仍然可见.手动测试网页时不会发生此问题.
有没有其他人遇到过这个问题?我正在使用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,因为hover(movetoElement)操作在2.30上无法正常工作,即使显式启用了本机事件也是如此.使用WebDriver的2.31版和Linux上的Firefox版本17和19进行了测试.
有关更多信息,请查看此链接
http://code.google.com/p/selenium/wiki/AdvancedUserInteractions#Native_events_versus_synthetic_events

原文地址:https://codeday.me/bug/20190529/1179449.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐