Selenium ActionChains 模块能够移动到具有偏移量的元素(提供 x 和 y 坐标,如下所示):
ActionChains(浏览器).move_to_element_with_offset(x-offset, y-offser).click().perform()
这对于测试嵌套在其他元素(例如 react 元素)内的元素的响应能力很有用。
Selenium TouchActions 模块包含类似的内容,只不过坐标是相对于视口(viewport)的。我的 TouchActions 脚本如下所示:
TouchActions(browser).tap_and_hold(x-offset, y-offset).release(x-offset, y-offset).perform()
此脚本不会为我激活预期的事件;然而,这个脚本确实:
element = browser.find_element_by_XPath(//img)
TouchActions(browser).tap(element).perform()
点击发生在元素的中心,这很有用;但是,我需要能够在元素的不同部分再次重复点击以测试该事件。 附加说明: 可以手动触发预期事件。
最佳答案
事实证明,我正在开发的应用程序的实现有一个功能,可以通过 native 操作系统版本访问,但不能通过其网络版本访问。
如果我提供了我试图测试的特定应用程序的详细信息,这个问题可能会更容易解决。
问题中提供的 Selenium 用法工作正常。这是the documentation
关于python - 如何使用 selenium TouchActions python 点击特定元素内部的坐标?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52919224/