Selenium 2 : moveByOffset() and consecutive release() - strange positioning

标签 selenium selenium-webdriver

我正在将 Selenium 2 与 FirefoxDriver 一起使用。任务是将元素移动几个像素。我这样编写任务:

val action = (new Actions(driver)).clickAndHold(el).moveByOffset(3,1).release().perform()

记录 mouseDown()、mouseMove() 和 mouseUp() 事件。所以我收到以下输出:

mouseDown at 267 133
mouseMove at 270 134
mouseMove at 267 133
mouseUp at 267 133

看起来 Selenium 在项目上调用 mouseDown,然后将其移动到指定位置,然后将其移回,然后调用 mouseUp。这很奇怪。

事实证明,原因是在release()调用中,因为当我调用它时:

val action = (new Actions(driver)).clickAndHold(el).moveByOffset(3,1).perform()

我明白了:

mouseDown at 267 133
mouseMove at 270 134

如何让Selenium在正确的位置调用mouseUp?

最佳答案

听起来像是一个错误...可能的解决方法是:

val action = (new Actions(driver)).dragAndDropToOffset(el, el.Location.X + 3, el.Location.Y + 1).perform()

关于 Selenium 2 : moveByOffset() and consecutive release() - strange positioning,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9735719/

相关文章:

selenium - 单击网页上的任意位置

python - 如何使用 Selenium WebDriver for python 在浏览器上打开一个新窗口?

python - Selenium Webdriver,截图为 numpy 数组(Python)

java - 手动单击一个按钮,浏览器转到一个新的 url;但是当我使用 webdriver 运行它时,它会打开一个新的浏览器

python - 如何使用 selenium webdriver Python 单击没有 lisk 的 span 按钮?

python - 使用 Selenium 从网站提取 SSL 证书详细信息 - Chrome 驱动程序

java - Selenium 节点/集线器身份验证

php - 在快完成时开始使用单元测试是否现实?

java - Selenium 网格: How to retrieve node information from HUB programatically?

java - 无法单击位于 <div> 使用 Selenium WebDriver 制作的弹出窗口上的按钮