如何通过点击和拖动使用Selenium导航地图



我正在使用Selenium和Java来尝试自动化一些谷歌地图导航。我想点击并按住地图,然后移动到某个方向,然后释放光标。这样可以在页面上移动地图。

到目前为止,我有

WebElement canvasElement = driver.findElement(map);
Actions builder = new Actions(driver.getWebDriver());
builder.moveToElement(canvasElement).clickAndHold().moveByOffset(300, 0).release().perform();

但是,页面上没有任何移动。我知道我选择的地图是正确的,因为如果我只是做

builder.moveToElement(canvasElement).clickAndHold().moveByOffset(300, 0).perform();

然后,当我用鼠标在地图上移动时,地图会移动,而无需单击鼠标左键,因为它仍处于点击并保持状态,从未释放。不确定moveByOffset为什么不适用于这种特殊情况。任何建议都将是伟大的

要点击并按住地图,然后移动到某个方向,然后释放光标,即创建动作链的光标,还需要调用build()方法,可以使用以下解决方案:

WebElement canvasElement = driver.findElement(map);
new Actions(driver).moveToElement(canvasElement, 0, 0).clickAndHold().moveByOffset(300, 0).release().build().perform();

相关内容

  • 没有找到相关文章

最新更新