1. 鼠标事件

说明:WebDriver库对模拟鼠标操作封装的一些方法,此知识点作为了解

WebDriver操作鼠标方法

说明:在WebDriver中将操作鼠标的方法封装在ActionChains类中1. context_click()            右击 --> 此方法模拟鼠标右键点击效果
2. double_click()            双击 --> 此方法模拟双标双击效果
3. drag_and_drop()            拖动 --> 此方法模拟双标拖动效果
4. move_to_element()        悬停 --> 此方法模拟鼠标悬停效果
5. perform()                执行 --> 此方法用来执行以上所有鼠标方法

鼠标执行-perform()

说明:在ActionChains类中所有提供的鼠标事件方法,在调用的时候所有的行为都存储在ActionChains类中,而perform()方法就是执行所有ActionChains中的行为提示:必须调用perform()方法才能执行鼠标事件

代码实现关键点分析

1. 导包:from selenium.webdriver.common.action_chains import ActionChains
2. 实例化ActionChains对象:Action=ActionChains(driver)
3. 调用右键方法:element=Action.context_click(username)
4. 执行:element.perform()

鼠标双击-double_click()

代码实现关键点分析

1. 导包...
2. 实例化...
3. 调用双击方法:element=Action.double_click(username)
4. 执行...

鼠标拖动-drag_and_drop()

说明:模拟鼠标拖动动作,选定拖动源元素释放到目标元素

拖动关键点分析

1. 源元素   socure=driver.find_element_by_id(xxx)
2. 目标元素 target=driver.find_element_by_id(xxx)
3. 调用方法 Action.drag_and_drop(source,target).perform()

鼠标悬停-move_to_element()

代码实现关键点分析

1. 导包...
2. 实例化...
3. 调用悬停方法:Action.move_to_element(element).perform()

2. 键盘操作

说明:1). 模拟键盘上一些按键或者组合键的输入 如:Ctrl+C 、Ctrl+V;2). WebDriver中对键盘的操作都封装在Keys类中

2.1 Keys类

导包:from selenium.webdriver.common.keys import Keys

2.2 常用的键盘操作

1. send_keys(Keys.BACK_SPACE)删除键(BackSpace)
2. send_keys(Keys.SPACE)空格键(Space)
3. send_keys(Keys.TAB)制表键(Tab)
4. send_keys(Keys.ESCAPE)回退键(Esc)
5. send_keys(Keys.ENTER)回车键(Enter)
6. send_keys(Keys.CONTROL,'a') 全选(Ctrl+A)
7. send_keys(Keys.CONTROL,'c')复制(Ctrl+C)提示:以上方法就不一个一个讲解了,因为调用方法都一样;

2.3 案例-1 注册页面A

需求:1). 输入用户名:admin1,暂停2秒 删除12). 全选用户名:admin      暂停2秒3). 复制用户名:admin      暂停2秒4). 粘贴到密码框          暂停2秒5). 关闭浏览器

2.4 案例-1 方法示例

# 定位用户名
element=driver.find_element_by_id("userA")
# 输入用户名
element.send_keys("admin1")
# 删除1
element.send_keys(Keys.BACK_SPACE)
# 全选
element.send_keys(Keys.CONTROL,'a')
# 复制
element.send_keys(Keys.CONTROL,'c')
# 粘贴
driver.find_element_by_id('passwordA').send_keys(Keys.CONTROL,'v')

WebDriver鼠标、键盘操作相关推荐

  1. Selenium自动化测试-6.鼠标键盘操作

    ------·今天距2020年77天·------ 这是ITester软件测试小栈第59次推文 大家好 我是vivi小胖虎 作为测试 好像对于点点点这事一直放不下 如何让点点点变得更简单 让人变得更懒 ...

  2. selenium自动化测试-鼠标键盘操作

    前面我们已经学完了8种定位方式和利用Firefox插件协助定位,学会了定位了,自动化就成功了一半. 但是我们好像只是定位,定位后的操作并不多,我们今天要系统的了解下鼠标键盘操作. 回顾下我们之前的简单 ...

  3. C# 模拟 鼠标 键盘操作

    C# 模拟 鼠标 键盘操作 转载于:https://www.cnblogs.com/macT/p/10208222.html

  4. python截图工具和模拟鼠标键盘_python PyAutoGUI 模拟鼠标键盘操作和截屏功能

    简介 一款跨平台/无依赖的自动化测试工具,目测只能控制鼠标/键盘/获取屏幕尺寸/弹出消息框/截屏. 安装 pip install pyautogui 鼠标键盘控制 >>> impor ...

  5. 模拟鼠标键盘操作,含硬件模拟技术。[转]

    模拟鼠标键盘操作,含硬件模拟技术. 键盘是我们使用计算机的一个很重要的输入设备了,即使在鼠标大行其道的今天,很多程序依然离不开键盘来操作.但是有时候,一些重复性的,很繁琐的键盘操作总会让人疲惫,于是就 ...

  6. PyMouse模拟鼠标键盘操作

    PyMouse模拟鼠标键盘操作 使用PyMouse实现模拟鼠标键盘操作 -----解决方案1 1)安装[pyMouse]( https://pypi.org/project/PyMouse/) 2)安 ...

  7. python记录鼠标键盘操作自动执行重复工作

    系列文章目录 文章目录 系列文章目录 前言 github项目原地址 一.执行方法 二.python录制 1.Frame1.py 2.KeymouseGo.py 三.说明书 KeymouseGo v2. ...

  8. C#鼠标键盘操作用于桌面脚本

    项目中添加这两个类KeyBord ,MoseKeyboard(文末) 对于有些软件获取不到具体控件的句柄,那就只能用鼠标键盘操作了 比如想执行一个粘贴操作,可以这样写,通常需要在新起的线程中写,不然复 ...

  9. 效率提升:使用AppleScript模拟鼠标键盘操作制作自动化工具

    文章目录 前言 AppleScript的实践应用 实践:还原修饰键默认设置 AppleScript基础知识 1.基本模块 语法 变量和属性 类型转换 运算符 List(数组) Record(键值对) ...

  10. 手把手带你学python自动化测试(五)——鼠标键盘操作

    在浏览器中,通常会用到鼠标来进行操作,比如右键菜单中选择一个操作,在 selenium 中提供了下列鼠标相关操作. ActionChains 类似提供了以下方法: context_click() 右击 ...

最新文章

  1. windows socket编程入门示例3
  2. boost之Boost.Foreach遍历
  3. Android动画之Frame Animation
  4. 泛型java实例_【Java学习笔记】Java6泛型实例
  5. 收集一些 有效的算法
  6. 线段树-Count on a Treap-神题
  7. 质量超高的UI素材站!推荐UI\UX设计师
  8. Web 开发中使用了 Vim 作为主编辑器之后......
  9. 如何使用phpMQTT连接阿里云微服务消息队列for IoT
  10. 数据库系统概论第五版(王珊)-基础篇(一)
  11. Visual C++ 2010 Express中文版如何下载
  12. cv2.cvtColor报错
  13. leetcode-1260:二维网格迁移
  14. 黎曼传记资料(2010-04-22 22:17:06)
  15. 电脑主板元件判断方法
  16. “NING咖啡”来袭,李宁的流量把戏还是真未来?
  17. java中的线程及常用方法
  18. 介绍一下什么是大数据
  19. [情感分析的新方法]
  20. php伪协议读取目录,PHP文件包含,文件读取的利用思路,以及配合伪协议的trick...

热门文章

  1. DevOps模式: 定义你的DevOps
  2. C# 打印PPT幻灯片
  3. 文件上传漏之Durian靶场练习——渗透day13
  4. 一不小心踏进Android开发: TPMini大眼睛使用PS3蓝牙手柄(一)各种尝试(1)
  5. 读书笔记-增量学习-LwF_Learning without Forgetting
  6. Redis 分布式锁:从小白到大神方案都经历了什么?
  7. nanomsg.nng 在windows下的编译
  8. IOS 多线程 常驻线程,并发,内存问题
  9. css svg使用_使用CSS使SVG响应
  10. HTML中marquee标签的使用