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的基本原理.基本上知道了这个东西是怎么回事, ...
随机推荐
- 第01章 部署虚拟环境安装Linux系统
在VMware中安装RHEL系统和其它Linux系统一样,注意的是: ……前边一直操作下边的步骤后: 重启系统后将看到系统的初始化界面,单击 LICENSE INFORMATION 选项. 选中 I ...
- Java语言基础(4)
1 关系运算符:>,>=,<,<=,==,!= 案例:Demo1 public class Demo1 { //偶数:能被2整除的整数 //2,4,6,8,10... //整除 ...
- mysql5.7.26 基于GTID的主从复制环境搭建
简单工作原理: (1)从库执行 change master to 语句,会立即将主库信息记录到master.info中 (2)从库执行 start slave语句,会立即生成IO_T和SQL_T (3 ...
- BZOJ1079 [SCOI2008]着色方案[组合计数DP]
$有a_{1}个1,a_{2}个2,...,a_{n}个n(n<=15,a_{n}<=5),求排成一列相邻位不相同的方案数.$ 关于这题的教训记录: 学会对于复杂的影响分开计,善于发现整体 ...
- shell脚本日志指南(1)
1.初始化日志文件.对文件的大小进行判断和压缩 LOG=$ if [ -e "${LOG}" ];then LOG_SIZE=`ls -l "${LOG}"| ...
- 使用pdo,使用pdo无法插入数据怎么办
如果你使用了最新版的XAMPP,那么你几乎不用改变php.ini的设置,就可以使用pdo but,插了一晚上,程序既不报错也不插入数据,真是气死人,后来发现是实例化pdo对象的时候没有指定字符集.所以 ...
- Acwing-280-陪审团(背包dp?)
链接: https://www.acwing.com/problem/content/282/ 题意: 在一个遥远的国家,一名嫌疑犯是否有罪需要由陪审团来决定. 陪审团是由法官从公民中挑选的. 法官先 ...
- 20. ClustrixDB explain参数解读
ClustrixDB有一个流模型,它从容器(表和索引)开始并通过操作符图对行进行流处理.ClustrixDB有一组丰富的操作符,随着更多功能和优化的添加,这些操作符偶尔会增加.我们使用一个地方来记录操 ...
- Resttemplate请求失败如何获取返回的json
参考:https://blog.csdn.net/u011974797/article/details/82424004 https://www.cnblogs.com/liumz0323/p/106 ...
- (转)JS window对象的top、parent、opener含义
1.top 该变更永远指分割窗口最高层次的浏览器窗口.如果计划从分割窗口的最高层次开始执行命令,就可以用top变量. 2.opener opener用于在window.open的页面引用执行该w ...