new Actions(data).moveToElement(element,x,y).perform();
此代码适用于: 硒3.8.1,Chrome 63,chromedriver 2.3.8
最终升级到: 硒3.14,铬75,chromedriver 75.0.3770.9
我遇到错误:
org.openqa.selenium.interactions.MoveTargetOutOfBoundsException
页面完全没有变化,它仍然是同一页面,但是现在我遇到了以前没有的错误,并且当时的测试工作正常……
有人告诉我:
在版本75中将Chromedriver切换为符合w3c标准后,您现在 必须先滚动任何元素到视图中,然后才能对其执行操作
问题是我无法在selenium中找到任何内部API调用来确定元素是否在视图中,如果没有则滚动到该元素。
另一件事是,您必须为此操作创建wrap方法,否则您将不得不在每次移动到元素之前放置代码的滚动部分……那么“切换到w3c兼容性”的意义何在?< / p>