actionchains selenium_selenium自动化测试入门 键盘鼠标事件ActionChains

在使用 Selenium WebDriver 做自动化测试的时候,会经常模拟鼠标和键盘的一些行为。比如使用鼠标单击、双击、右击、拖拽等动作;或者键盘输入、快捷键使用、组合键使用等模拟键盘的操作。在 WebDeriver 中,有一个专门的类来负责实现这些测试场景,那就是 ActionChains类,在使用该类做键盘操作的过程中会配合使用到 Keys 数据存储类,Keys包含键盘上所有特殊按键。

一、鼠标点击操作click(element=None) 左击

context_click(element=None) 右击

double_click(element=None) 双击

move_to_element(element) 移动鼠标到元素中间(悬停)

drag_and_drop(source,target) source上按下左键拖动到target元素上

click_and_hold(element=None)在元素上按下鼠标左键

release() 释放鼠标

perform() 执行ActionChains中存储的动作

element有None默认值的表示不传入参数该动作在原地执行。

鼠标事件具体使用示例如下:

示例1:鼠标左键点击

action=ActionChains(driver)

action.click() # 在鼠标当前位置单击

action.perform() # 执行action存储的动作

# 鼠标在 '新闻' 元素位置单击

action.click(driver.find_element_by_link_text('新闻')).perform()

注意:action.click() 动作并未执行,它只是存储在action实例中,需要通过action.perform()方法执行存储动作;鼠标键盘事件动作动作可以存储多个,然后一次性执行。如下执行Cytl+C:

ActionChains(driver).key_down(Keys.CONTROL).send_keys('c').key_up(Keys.CONTROL).perform()

示例2:鼠标右击

action=ActionChains(driver)

action.context_click().perform() # 在鼠标当前位置右击

# 鼠标在 '新闻' 元素位置右击

action.context_click(driver.find_element_by_link_text('新闻')).perform()

示例3:鼠标双击操作

act

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值