Selenium 2自动化测试实战10(鼠标事件)
一、鼠标事件
1. webdriver中,关于鼠标操作的方法封装在ActionChains类中
ActionChains类提供了鼠标操作的常用方法:
perform:执行所有ActionChains中存储的行为
context_click():右击
double_click():双击
drag_and_drop():拖动
move_to_element():鼠标悬停
2. 鼠标右击操作
#yunpan.py
#coding:utf-8
from selenium.webdriver.common.action_chains import ActionChains
from selenium import webdriver driver=webdriver.Chrome()
driver.get("https://yunpan.360.cn")
#.......
#定位到要右击的元素
right_click=driver.find_element_by_id("XXX")
#对定位到的元素执行鼠标右键操作
ActionChains(driver).context_click(right_click).perform()
(1)from selenium.webdriver.common.action_chains import ActionChains
导入提供鼠标操作的ActionChains类。
(2)ActionChains(driver)
调用ActionChains()类,将浏览器驱动driver作为参数传入
(3)context_cilick(right_click)
context_click()方法用于模拟鼠标右键操作,在调用时需要指定元素定位
(4)perform()
执行所有ActionChains中存储的行为,可以理解成是对整个操作的提交动作
3. 鼠标悬停
move_to_element()方法可以模拟鼠标悬停的动作,器用法与context_click()相同
#mouse.py
#定位到要悬停的元素
above=driver.find_element_by_id('xxx') #对定位到的元素执行悬停操作
ActionChains(driver).move_to_element(above).perform()
#.....
4. 鼠标双击操作
double_click()方法用于模拟鼠标双击操作
#mouse.py
#定位到要悬停的元素
double_click=driver.find_element_by_id('xxx') #对定位到的元素执行双击操作
ActionChains(driver).double_click(double_click).perform()
#.....
5. 鼠标拖放操作
drag_and_drop(source,target)在源元素上按住鼠标左键,然后移动到目标元素上释放
source:鼠标拖动的源元素
target:鼠标释放的目标元素
#mouse.py
#........ #定位元素的原位置
element=driver.find_element_by_id("XX")
#定位元素要移动到的目标位置
target=driver.find_element_by_id("XX") #执行元素的拖放操作
ActionChains(driver).drag_and_drop(element,target).perform()
#.......
Selenium 2自动化测试实战10(鼠标事件)的更多相关文章
- Selenium 2自动化测试实战
Selenium 2自动化测试实战 百度网盘 链接:https://pan.baidu.com/s/1aiP3d8Y1QlcHD3fAlEj4sg 提取码:jp8e 复制这段内容后打开百度网盘手机Ap ...
- Selenium 2自动化测试实战3(函数、类和方法)
一.函数.类和方法1.函数在python中通过def关键字来定义函数 创建一个add()函数,此函数接收两个参数a,b,通过print()打印a+b的结果.调用add()函数,并且上传两个参数3,5给 ...
- 《Selenium 2自动化测试实战 基于Python语言》中发送最新邮件无内容问题的解决方法
虫师的<Selenium 2自动化测试实战 基于Python语言>是我自动化测试的启蒙书 也是我推荐的自动化测试入门必备书,但是书中有一处明显的错误,会误导很多读者,这处错误就是第8章自动 ...
- Selenium 与自动化测试 —— 《Selenium 2 自动化测试实战》读书笔记
背景 最近在弄 appium,然后顺便发现了 Selenium 框架和这本书,恰好这本书也介绍了一些软件测试&自动化测试的理论知识,遂拿过来学习学习.所以本文几乎没有实践内容,大多都是概念和工 ...
- selenium python (三)鼠标事件
# -*- coding: utf-8 -*-#鼠标事件 #ActionChains类中包括: # context_click() 右击: ...
- Selenium3 + Python3自动化测试系列四——鼠标事件和键盘事件
一.鼠标事件 在 WebDriver 中, 将这些关于鼠标操作的方法封装在 ActionChains 类提供. ActionChains 类提供了鼠标操作的常用方法. ActionChains 类的成 ...
- Selenium 2自动化测试实战11(键盘事件)
一.键盘事件 1.Keys()类提供了键盘上几乎所有按键的方法,如下实例: #coding:utf-8 from selenium.webdriver.common.keys import Keys ...
- Selenium 2自动化测试实战18(上传文件)
一.上传文件 上传文件是比较常见的web功能之一,但WebDriver没有提供专门用于上传的方法. 一般web页面的上传功能的操作需要单击“上传”按钮后打开本地的Window窗口,从窗口选择本地文件进 ...
- Selenium+Python自动化测试实战(2)元素定位
1.Selenium2 的原理 第一篇分享简单介绍了基于Python开发的Selenium2的环境配置,这篇主要讲一下基本用法.首先讲一下Selenium2的基本原理.基本上知道了这个东西是怎么回事, ...
随机推荐
- 学习Linux让我进入了知名企业 原
说起我学习Linux的原因是多方面的,大学时我学的是物理学师范专业,有部分计算机课程,但我觉得这些课程没什么实际作用,我自己对计算机比较感兴趣,我利用业余时间学习了很多计算机技术.在大学期间我参加了很 ...
- web开发规范文档二
头部 header\hd 内容块 content\con\bd text txt title 尾部 footer 导航 nav\menu sub-n ...
- AntisymmetricRNN: A Dynamical System View on Recurrent Neural Networks(解析)
原文链接:https://arxiv.org/abs/1902.09689 发表在:ICLR 2019 ------------------------------------------------ ...
- 双向链表/list
双向链表结构如下 双向链表结构中元素在内存中不是紧邻空间,而是每个元素中存放上一个元素和后一个元素的地址 第一个元素称为头(head)元素,前连接(前置指针域)为nil 最后一个元素称为尾(foot) ...
- 使用h5新特性,轻松监听任何App自带返回键
1.前言 如今h5新特性.新标签.新规范等有很多,而且正在不断完善中,各大浏览器商对它们的支持,也是相当给力.作为前端程序员,我觉得我们还是有必要积极关注并勇敢地加以实践.接下来我将和各位分享一个特别 ...
- hadoop namenode切换
hdfs haadmin -transitionToActive --forcemanual nn1 将nn1强制转换为Active hdfs haadmin -transitionToStandby ...
- php的流程控制 if elseif swich case for循环
if ......else 最简形式: <?php if (true){ echo "晚上找昌仔训练去";}?> ...
- JAVA笔记6-继承和权限控制
1. (1)类的成员的权限修饰符有public,protected,private或default,限定其他对象对该类对象成员的访问权限. (2)class的权限修饰符只可以是public或defau ...
- 【leetcode】1259.Handshakes That Don't Cross
题目如下: 解题思路:动态规划.记dp[i] = v表示由i个人组成的圈子一共有v种握手的方法.对于一个由n个人组成的圈子,编号为0的人一共可以和编号为 (1,3,5....,n-1)的握手,这也很好 ...
- javascript中的原型和原型链(一)
原型和原型链是 JS 中不可避免需要碰到的知识点,本文使用图片思维导图的形式缕一缕原型.原型链.实例.构造函数等等概念之间的关系. Constructor 构造函数 首先我们先写一个构造函数 Pers ...