作为我的 Selenium 登录功能测试的一部分,我想通过识别按钮的坐标并指示 Selenium 单击这些坐标来单击按钮。这可以在不识别元素本身的情况下完成(通过 id、xpath 等)。
我知道还有其他更有效的方法来运行单击命令,但我希望专门使用这种方法来最好地匹配用户体验。
There is一种方法来做到这一点。使用 ActionChains API,您可以将鼠标移动到包含的元素上,调整一定的偏移量(相对于该元素的中间),将“光标”放在所需的按钮(或其他元素)上,然后单击该位置。以下是在 Python 中使用 webdriver 执行此操作的方法:
from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains
browser = webdriver.Chrome()
elem = browser.find_element_by_selector(".some > selector")
ac = ActionChains(browser)
ac.move_to_element(elem).move_by_offset(x_offset, y_offset).click().perform()
你们都很快就驳回了这个问题。由于多种原因,人们可能需要单击特定位置而不是某个元素。就我而言,我有一个 SVG 条形图,其中包含一个覆盖元素,可以捕获所有点击。我想模拟点击其中一个栏,但由于覆盖层在那里,Selenium 无法点击元素本身。这项技术对于图像映射也很有价值。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)