drs*_*drs 3 python selenium canvas selenium-webdriver python-unittest
我正在尝试为 HTML5 画布应用程序运行自动化测试和基准测试。我已经使用 python-unittest 和 ChromeDriver 设置了 Selenium(尽管我愿意接受其他选择)。
画布应用程序是一个白板,通过单击鼠标并在画布上拖动来绘制线条。如何使用 Selenium 自动绘制简单的形状?我浏览了 python-selenium API,唯一的鼠标移动测试选项是 through ActionChains,但这些都将鼠标移动到基于它们的元素id或class. 我还没有看到根据画布上的坐标自动移动鼠标的方法。
有没有办法实现画布上绘图的自动化测试?
小智 5
还有一个 click_and_hold 功能。这对我有用:
from selenium.webdriver.common.action_chains import ActionChains
canvas = self.driver.find_element_by_id("myCanvas")
drawing = ActionChains(self.driver)\
.click_and_hold(canvas)\
.move_by_offset(-10, -15)\
.move_by_offset(20, 32)\
.move_by_offset(10, 25)\
.release()
drawing.perform()
Run Code Online (Sandbox Code Playgroud)
(其中 self.driver 是我的 Selenium webdriver。)