由于现在web端页面提供了更丰富的鼠标交互方式,因此,在做UI自动化的过程中可能会用到鼠标的右击、双击、悬停、甚至是鼠标拖动等功能。这些在WebDriver 中都是支持的,基于鼠标的相关操作方法都封装在ActionChains类中。
以python为例,需要先导入对应的包:
from selenium.webdriver.common.action_chains import ActionChains
ActionChains类提供了鼠标操作的常用方法:
- perform():执行所有ActionChains中存储的行为
- context_click(): 右击
- double_click(): 双击
- drag_and_drop(): 拖动
- move_to_element(): 鼠标悬停
- drag_and_drop(source,target): 鼠标拖放操作,在source元素上按住鼠标左键,然后移动到target目标元素上释放
- click_and_hold(): 鼠标左键按住不放
- release(): 释放鼠标
使用案例:
所有鼠标的操作,最后都要调用perform()方法进行最后的执行。