selenium 做 Web 自动化,鼠标当然也要自动化!

2023-12-17

2024软件测试面试刷题,这个小程序(永久刷题),靠它快速找到工作了!(刷题APP的天花板)-CSDN博客 文章浏览阅读1.9k次,点赞85次,收藏11次。你知不知道有这么一个软件测试面试的刷题小程序。里面包含了面试常问的软件测试基础题,web自动化测试、app自动化测试、接口测试、性能测试、自动化测试、安全测试及一些常问到的人力资源题目。最主要的是他还收集了像阿里、华为这样的大厂面试真题,还有互动交流板块…… https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5501 我们在做 Web 自动化的时候,有时候页面的元素不需要我们点击,值需要把鼠标移动上去就能展示各种信息。这个时候我们可以通过操作鼠标来实现,接下来我们来讲一下使用 selenium 做 Web 自动化的时候如何来操作鼠标。鼠标操作,我们可以使用 selenium 的 ActionChains 类来实现,我们先来认识一下这个类。

01.ActionChains 类常用方法

  • click_and_hold(on_element=None) :点击鼠标左键,不松开

  • context_click(on_element=None):点击鼠标右键

  • double_click(on_element=None):双击鼠标左键

  • drag_and_drop(source, target):拖拽到某个元素然后松开

  • move_by_offset(xoffset, yoffset):鼠标从当前位置移动到某个坐标

  • move_to_element(to_element) :鼠标移动到某个元素

  • release(on_element=None):在元素上释放按住的鼠标按钮

  • pause(seconds):暂停操作(秒)

02.ActionChains 类所有方法

  • perform(self)--执行鼠标操作方法

  • reset_actions()--清楚操作子令

  • click(on_element=None)--点击鼠标左键

  • click_and_hold(on_element=None):点击鼠标左键,不松开

  • context_click(on_element=None):点击鼠标右键

  • double_click(on_element=None):双击鼠标左键

  • drag_and_drop(source, target):拖拽到某个元素然后松开

  • drag_and_drop_by_offset(source, xoffset, yoffset) :拖拽到某个坐标然后松开

  • key_down(value, element=None):按下某个键盘上的

  • key_up(value, element=None) :松开某个

  • move_by_offset(xoffset, yoffset):鼠标从当前位置移动到某个坐标

  • move_to_element(to_element) :鼠标移动到某个元素

  • move_to_element_with_offset(to_element, xoffset, yoffset):移动到

  • 距某个元素(左上角坐标)多少距离的位置

  • pause(seconds):暂停操作(秒)

  • release(on_element=None):在元素上释放按住的鼠标按钮

  • send_keys(*keys_to_send):发送某个键到当前焦点的元素

  • send_keys_to_element(element, *keys_to_send) :发送某个键到指定元素

03.ActionChains 使用步骤

  1. 实例化:actions = ActionChains(driver)

  2. 调用鼠标操作方法:actions.move_to_element(menu)

  3. 执行鼠标操作方法:actions.perform()

04.实战

代码做的事情:

  1. 打开测试网页:https://www.runoob.com/try/try.php?filename=tryjs_events_mouseover

  2. 切换 iframe

  3. 定位到绑定鼠标事件的 div

  4. 将鼠标移动到 div 上触发事件(可以观察到 div 上字会发生变化)

import time
from selenium import webdriver
from selenium.webdriver import ActionChains
driver = webdriver.Chrome(r"D:\chromeDriver\71\chromedriver71.exe")
driver.implicitly_wait(5)
driver.get(url="https://www.runoob.com/try/try.php?filename=tryjs_events_mouseover")
driver.maximize_window()
#切换iframe
driver.switch_to.frame(driver.find_element_by_xpath('//iframe[@id="iframeResult"]'))
#元素定位
ele = driver.find_element_by_xpath('//div[@onmouseover="mOver(this)"]')
#移动鼠标到元素上触发事件
actions = ActionChains(driver)
actions.move_to_element(ele)
actions.perform()
time.sleep(5)
driver.quit()

05.总结

  • ActionChains 类中其他方法使用方式都一样,大家有空可以试一下

  • ActionChains 类中有很多方法,但是常用的并不多,上面已经列出,掌握常用方法即可

  • 特别注意:ActionChains 的执行原理,当你调用 ActionChains 的方法时,不会立即执行,而是会将所有的操作按顺序存放在一个队列里,当你调用 perform()方法时,队列中的时间会依次执行。

  • ActionChains 类中的方法可以使用链式调用,大家思考思考自己拓展吧(其实很简单)。

行动吧,在路上总比一直观望的要好,未来的你肯定会感谢现在拼搏的自己!如果想学习提升找不到资料,没人答疑解惑时, 请及时加入群: 786229024 ,里面有各种测试开发资料和技术可以一起交流哦。

最后: 下方这份完整的软件测试视频教程已经整理上传完成,需要的朋友们可以自行领取 【保证100%免费】

在这里插入图片描述

软件测试面试文档

我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。 在这里插入图片描述
在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

selenium 做 Web 自动化,鼠标当然也要自动化! 的相关文章

随机推荐

  • 题解 | #输出单向链表中倒数第k个结点#

    滴滴前端日常实习一面 字节跳动前端日常实习 一面 Cider秋招一二面 已拒 贝壳编程题题解 山东offer选择 求助 选择华为还是中电14所 写论文 写论文 华为 煞笔公司 华为待遇问题 已接offer 字节跳动飞书运营实习面经 华为 煞
  • 编写http接口api及接口自动化测试

    片言 此文中代码都是笔者工作中源码 所以不会很完整 主要摘常见场景的api片段用以举例说明 另 此文主要针对自动化测试人员 尤其有python基础阅读更佳 笔者使用 python3 6 postgresql10 flask 0 12 的环境
  • 题解 | #某宝店铺连续2天及以上购物的用户及其对应的天数#

    腾讯财经线暑期实习生面经 前女友突然在我的婚礼现场求复合怎么办 不妙了 好像自己真成小丑了 华为实习 提前批面试 池子里泡了一百多天了 发的一堆sp被鸽麻了 求求大家投下小米 HC还剩50 剩下不到半个月去哪招人呀 求求大家投下小米吧 发的
  • 2024最全java面试题及答案(600道)

    本文分为十九个模块 分别是 包括了 Java面试 Spring JVM MyBatis Redis MySQL 并发编程 微服务 Linux Springboot SpringCloud MQ Kafka 面试专题 如下图所示 共包含 20
  • 搭建Android自动化python+appium环境

    一 需要软件 JDK JAVA安装后配置JDK环境 SDK SDK下载后配置adb环境 Python pyhton语言 Pycharm python脚本编译工具 Appium python client pyhton中的库 Appium客户
  • C 语言教程:数据类型和格式说明符

    C 语言中的数据类型 C 中的变量必须是指定的 数据类型 并且您必须在 printf 函数中使用 格式说明符 来显示它 创建变量 int myNum 5 整数 没有小数点 float myFloatNum 5 99 浮点数 char myL
  • 题解 | #复制部分字符串#

    拒了华为 重回0 offer 目前在大三 寒假想找个实习 退役大学生 如题 uu们帮忙看看 25届 没有实习过 没有背过八股文 心里感觉很不稳 下学期想去暑期实习 uu们 德赛西威鸽 在中国电信公司工作一年后 我提桶跑路 东北辽宁就业求职好
  • 华为OD机试真题-求字符串中所有整数的最小和-2023年OD统一考试(C卷)

    题目描述 输入字符串s 输出s中包含所有整数的最小和 说明 1 字符串s 只包含 a z A Z 2 合法的整数包括 1 正整数 一个或者多个0 9组成 如 0 2 3 002 102 2 负整数 负号 开头 数字部分由一个或者多个0 9组
  • FXSXP32.dll文件丢失导致程序无法运行问题

    其实很多用户玩单机游戏或者安装软件的时候就出现过这种问题 如果是新手第一时间会认为是软件或游戏出错了 其实并不是这样 其主要原因就是你电脑系统的该dll文件丢失了或没有安装一些系统软件平台所需要的动态链接库 这时你可以下载这个FXSXP32
  • APP UI自动化测试思路总结

    首先想要说明一下 APP自动化测试可能很多公司不用 但也是大部分自动化测试工程师 高级测试工程师岗位招聘信息上要求的 所以为了更好的待遇 我们还是需要花时间去掌握的 毕竟谁也不会跟钱过不去 接下来 一起总结一下APP UI自动化测试的思路吧
  • Elasticsearch安装

    1 什么是ELK ELK是Elasticsearch Logstash Kibana三大开源框架首字母大写简称 市面上也被成为Elastic Stack 1 Elasticsearch 负责日志的检索和存储 2 Logstash 负责日志的
  • 自动化测试中6种常见验证码的处理方式

    2024软件测试面试刷题 这个小程序 永久刷题 靠它快速找到工作了 刷题APP的天花板 CSDN博客 文章浏览阅读1 8k次 点赞82次 收藏11次 你知不知道有这么一个软件测试面试的刷题小程序 里面包含了面试常问的软件测试基础题 web自
  • FXSAPI.dll文件缺失导致程序无法运行问题

    其实很多用户玩单机游戏或者安装软件的时候就出现过这种问题 如果是新手第一时间会认为是软件或游戏出错了 其实并不是这样 其主要原因就是你电脑系统的该dll文件丢失了或没有安装一些系统软件平台所需要的动态链接库 这时你可以下载这个FXSAPI
  • 华为OD机试真题-查找一个有向网络的头节点和尾节点-2023年OD统一考试(C卷)

    题目描述 给定一个有向图 图中可能包含有环 图使用二维矩阵表示 每一行的第一列表示起始节点 第二列表示终止节点 如 0 1 表示从0到1的路径 每个节点用正整数表示 求这个数据的首节点与尾节点 题目给的用例会是一个首节点 但可能存在多个尾节
  • 拓展了个新业务枚举类型,资损了

    分享是最有效的学习方式 案例背景 翻车了 为了cover线上一个业务场景 小猫新增了一个新的枚举类型 盲目自信就没有测试发生产了 由于是底层服务 上层调用导致计算逻辑有误 造成资损 老板很生气 后果很严重 产品提出了一个新的业务场景 新增一
  • pytest-rerunfailures:优化测试稳定性的失败重试工具

    2024软件测试面试刷题 这个小程序 永久刷题 靠它快速找到工作了 刷题APP的天花板 CSDN博客 文章浏览阅读1 8k次 点赞82次 收藏11次 你知不知道有这么一个软件测试面试的刷题小程序 里面包含了面试常问的软件测试基础题 web自
  • 华为OD机试真题-员工派遣-2023年OD统一考试(C卷)

    题目描述 某公司部门需要派遣员工去国外做项目 现在 代号为x的国家和代号为y的国家分别需要cntx名和cnty名员工 部门每个员工有一个员工号 1 2 3 工号连续 从1开始 部长派遣员工的规则 规则1 从 1 k 中选择员工派遣出去 规则
  • 题解 | #某宝店铺连续2天及以上购物的用户及其对应的天数#

    腾讯财经线暑期实习生面经 前女友突然在我的婚礼现场求复合怎么办 不妙了 好像自己真成小丑了 华为实习 提前批面试 池子里泡了一百多天了 发的一堆sp被鸽麻了 求求大家投下小米 HC还剩50 剩下不到半个月去哪招人呀 求求大家投下小米吧 发的
  • 数据迁移测试经验分享

    以下为作者观点 数据迁移 是在保证新旧系统业务连续性的前提下 将数据从旧数据库迁移到新数据库的过程 测试前通过迁移策略和方案了解新旧系统数据如何重构与关联 测试过程需确保数据迁移的正确性 主要体现在技术层面 确保数据0丢失 数据库库表处理正
  • selenium 做 Web 自动化,鼠标当然也要自动化!

    2024软件测试面试刷题 这个小程序 永久刷题 靠它快速找到工作了 刷题APP的天花板 CSDN博客 文章浏览阅读1 9k次 点赞85次 收藏11次 你知不知道有这么一个软件测试面试的刷题小程序 里面包含了面试常问的软件测试基础题 web自