——————·今天距2020年77天·——————

这是ITester软件测试小栈第59次推文

大家好

我是vivi小胖虎

作为测试

好像对于点点点这事一直放不下

如何让点点点变得更简单

让人变得更懒呢

今天就正式揭晓

在上一篇:Selenium自动化测试-脚本录制神器Katalon Recorder,我们认识了一个实用的脚本录制神器。到此为止,已经学完了8种定位方式以及利用Firefox插件协助定位,学会定位,Selenium自动化就成功了一半。

But,我们好像只是知道定位,定位后的操作并不多,今天就来系统的了解下鼠标键盘操作。

首先,回顾下我们之前的简单操作:

1.click() 点击;

2.clear() 清除;

3.send_keys() 输入;

鼠标操作

之前定位的时候,用到了click点击元素,selenium除了click模拟鼠标单击操作外,还提供了双击、右击、悬停、拖动等操作,使用这些要导入ActionChains类

from  selenium.webdriver.common.action_chains import ActionChains

ActionChains提供的操作如下:

  • perform() 执行所有 ActionChains 中存储的行为;

  • context_click() 右击;

  • double_click() 双击;

  • drag_and_drop() 拖拽到某个元素;

  • move_to_element() 鼠标悬停;

  • drag_and_drop_by_offset()拖拽到某个坐标;

一、move_to_element()

以百度页面的设置为例,看看鼠标悬停怎么操作。

鼠标移至设置,会出现下拉菜单,显示4个选项,代码如下:

整个流程是:定位到元素后,调用ActionChains()方法,将driver作为参数传入,鼠标悬停到元素上,perform()执行所有ActionChains中储存的行为。

二、double_click() 双击

以百度一下按钮为例,双击百度一下,代码如下:

可以看出,双击百度一下按钮和之前click()单击效果一样,都能实现刷新页面的作用。

三、context_click() 右击

右击典型的例子是云盘,我们以百度云盘为例:

选择某个素材,然后右击,代码如下:

注意,上面的代码并不能运行成功,只是演示右击是怎么操作的。通过link_text定位到需要右击的元素上,然后执行右击操作。

四、drag_and_drop()

drag_and_drop(source, target):将对象拖拽到目标地点;

source:源对象,需要移动的元素;

target:目标对象,将源对象拖放至的位置;

实现代码如下:

上面的代码只是讲解drag_and_drop()的运行原理,具体的元素定位根据自己实战需要进行修改。

五、drag_and_drop_by_offset()

drag_and_drop_by_offset(source, xoffset, yoffset),其中:

source:需要移动的元素;

xoffset: 将元素拖动到另一个位置的x坐标;

yoffset: 将元素拖动到另一个位置的y坐标;

我们以滑块为例,我们需要将滑块移到最右的位置来解锁:

怎么实现呢,我们通过定位元素,发现整个滑块的长度为298px。

那么我们只要往右滑动的距离超过298px,就可以实现解锁滑块了,等不及了,用代码来实现吧。

运行之后,自动解锁滑块成功:

键盘操作

selenium提供了一整套的模拟键盘操作,之前了解的send_keys()方法可以模拟键盘输入,模拟键盘操作需导入键盘模块 :

from selenium.webdriver.common.keys import Keys

Keys()类提供了键盘几乎所有按键的方法,常见的键盘操作:

以上常见的键盘操作基本满足我们日常的操作,接下来我们写代码看下键盘操作的效果:

通过上面的例子,你可以掌握基本的键盘操作,更多的操作可以自己多练习、实践。

下一篇将分享获取元素属性,敬请期待~

最后是今天的分享:App自动化(基于appium+python)

ITester软件测试小栈今日分享

分享内容

APP自动化(基于appium+Python)

领取方式

微信公众号后台回复:Appium

有图有真相

以上

That‘s all

ITester软件测试小栈

往期内容宠幸

叮—这有一打让你666的测试终极资料包,请查收!

打开PyCharm永久激活的这两个锦囊,再也不用担心写代码的时候让我付费了!

QQ空间面试题放送,速度教科书式扑街补救offer!

金九银十加薪季,测试题预热一波。

Selenium自动化测试-1.selenium介绍及环境安装

Selenium自动化测试-2.浏览器基本操作

Selenium自动化测试-3.元素定位(1)

Selenium自动化测试-3.元素定位(2)

Selenium自动化测试-3.元素定位(3)

Selenium自动化测试-4.By定位及如何确定元素唯一

Selenium自动化测试-5.脚本录制神器Katalon Recorder

速看,APP测试之ADB最全指南!

APP测试之Monkey压力测试(一)

APP测试之Monkey压力测试(二)

快来星标 置顶 关注我

想要获取相关资料和软件 ?

Q群:701841415

Selenium自动化测试-6.鼠标键盘操作相关推荐

  1. selenium webdriver模拟鼠标键盘操作

    在测试使用Selenium webdriver测试WEB系统的时候,用到了模拟鼠标.键盘的一些输入操作. 1.鼠标的左键点击.双击.拖拽.右键点击等: 2.键盘的回车.回退.空格.ctrl.alt.s ...

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

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

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

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

  4. python写界面输入测试脚本_python+Selenium自动化测试——输入,点击操作

    这是我的第一个真正意思上的自动化脚本. 1.练习的测试用例为: 打开百度首页,搜索"胡歌",然后检索列表,有无"胡歌的新浪微博"这个链接 2.在写脚本之前,需要 ...

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

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

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

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

  7. PyMouse模拟鼠标键盘操作

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

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

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

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

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

最新文章

  1. cookie 免密登录_python
  2. zabbix4.0搭建(基于CentOS6.8)
  3. 美媒评2018年全球十大突破性技术:AI和人工胚胎上榜
  4. diff命令输出格式解读
  5. bzoj:3110: [Zjoi2013]K大数查询
  6. silverlight之ToolTipService
  7. 多元线性回归matlab代码例题_多元线性回归matlab程序
  8. 9.2.2、Libgdx的输入处理之事件处理
  9. c语言变量名由啥组成,一个c语言是由什么构成
  10. 分享21个精美的博客网站设计案例
  11. 【渝粤教育】国家开放大学2018年春季 0176-21T电机学(一) 参考试题
  12. python中10none_Python中的None与Null(空字符)的区别
  13. CM4下SPI接口CAN模块配置流程
  14. 要么听我的,要么走开(摘自《代码之道》第8章)
  15. 【笔记】个人博客建立(域名选择、网站备案、公安联网备案、安全评估报告)
  16. 原生Js放大镜实例(附图附讲解可直接复制研究使用,小白福利)
  17. 一步一步搭建 oracle 11gR2 rac+dg之grid安装(四)
  18. Linux下Nginx的卸载、安装以及基本使用
  19. ArcGIS空间分析实验教程-部分实验案例(ArcPy实现)
  20. 服务器部署基于chatgpt的服务

热门文章

  1. sockets php,PHP: Sockets - Manual
  2. 无人驾驶(如何自己构建hdmap)
  3. 广科计算机专业3 2分数线,考试网:重庆最新高考录取分数线发布 理科一本533分...
  4. 自定义检验注解_多注解自定义参数校验
  5. 深度学习的半精度浮点数的运用
  6. 基于MNIST数据集的最优参数的方法的比较
  7. pdf打印显示spoolsv.exe-应用程序错误的原因和解决方法
  8. 实现自动文本摘要(python,java)
  9. Qt学习之路(10): Meta-Object系统
  10. Luogu 2296 寻找道路