ui自动化--鼠标操作ActionChains
需要先引入鼠标操作模块:from selenium.webdriver.common.action_chains import ActionChains
实际上ActionChains这个模块的实现的核心思想就是,当你调用ActionChains的方法时,不会立即执行,而是会将所有的操作按顺序存放在一个List里,当你调用perform()方法时,队列中的时间会依次执行
鼠标拖拽:ActionChains(driver).drag_and_drop(source=source,target=target)
from selenium.webdriver.common.action_chains import ActionChains
#获取到元素
el=driver.find_element_by_css_selector('#a')
dis1=driver.find_element_by_css_selector('#dis1')
ActionChains(driver).move_to_element(el).click(dis1).perform()#移动到某个元素上,并点击元素dis1 source=driver.find_element_by_css_selector('#dragger')
target=driver.find_element_by_css_selector('#i1')
source1=driver.find_element_by_css_selector('#dragger1')
target1=driver.find_element_by_css_selector('#i2')
source2=driver.find_element_by_css_selector('#dragger2')
target2=driver.find_element_by_css_selector('#i3')
source3=driver.find_element_by_css_selector('#dragger3')
target3=driver.find_element_by_css_selector('#i4')
ActionChains(driver).drag_and_drop(source,target).drag_and_drop(source1,target1).drag_and_drop(source2,target2).drag_and_drop(source3,target3).perform()#
#只有再perform的时候才会执行。先前的drag_and_drop只是将操作加入到了一个list种,再执行perform函数的时候,才会依次执行list种的操作
鼠标点击
# 单击事件,可接受elementObj
ActionChains(driver).click() # 双击事件,可接受elementObj
ActionChains(driver).double_click() # 点击鼠标右键
ActionChains(driver).context_click() # 点击某个元素不松开,接收elementObj
ActionChains(driver).click_and_hold() # # 某个元素上松开鼠标左键,接收elementObj
ActionChains(driver).release()
ui自动化--鼠标操作ActionChains的更多相关文章
- python-web自动化-鼠标操作
		
鼠标操作由ActionChains类来完成鼠标操作 perform() 执行鼠标操作move_to_element() 鼠标悬浮:最常用的操作double_click() 双击操作context_cl ...
 - 模拟鼠标操作(ActionChains)(转 侵删)
		
在日常的测试中,经常会遇到需要鼠标去操作的一些事情,比如说悬浮菜单.拖动验证码等,这一节我们来学习如何使用webdriver模拟鼠标的操作 首页模拟鼠标的操作要首先引入ActionChains的包 f ...
 - selenium做UI自动化时,模拟鼠标各种操作的ActionChains的用法
		
1.selenium做自动化的时候,需要模拟鼠标进行单击.双击.右键.拖拽等操作,selenium提供了ActionChains类来进行处理. 2.执行原理:当你调用ActionChains的方法时, ...
 - web自动化 -- ActionChains()的鼠标操作
		
webdriver模块下的ActionChains类 一.两个主要组件 1.实例化 ActionChains() 2.ActionChains(driver).perform() perform() ...
 - python之selenium玩转鼠标操作(ActionChains)
		
前提: 一般人用selenium自动化时,会用到模拟鼠标操作的情况,像单击,双击,右击,左击啊等,这个时候我们就要用到ActionChains了. 内容: 1.ActionChains用法整理 cli ...
 - ui自动化之selenium操作(五)简单元素操作--续
		
1. 多窗口切换 有时候需要在多窗口切换,webdriver提供了switch_to_window()方法支持切换窗口: from selenium import webdriver import o ...
 - ui自动化之selenium操作(四)简单元素操作
		
1. clear() clear()方法用于清除文本输入框内的内容:一般输入框中都有默认文字,如果不清空有可能会导致字符拼接: browser.find_element(By.ID,"use ...
 - 【Selenium02篇】python+selenium实现Web自动化:鼠标操作和键盘操作!
		
一.前言 最近问我自动化的人确实有点多,个人突发奇想:想从0开始讲解python+selenium实现Web自动化测试,请关注博客持续更新! 这是python+selenium实现Web自动化第二篇博 ...
 - Python+Selenium自动化 模拟鼠标操作
		
Python+Selenium自动化 模拟鼠标操作 在webdriver中,鼠标的一些操作如:双击.右击.悬停.拖动等都被封装在ActionChains类中,我们只用在需要使用的时候,导入这个类就 ...
 
随机推荐
- js、jQuery、ajax面试题
			
1.javascript的typeof返回哪些数据类型. 答案:string,boolean,number,undefined,function,object 2.例举3种强制类型转换和2种隐式类型转 ...
 - 一进“dos”就自动进入上次的目录
			
这个原来在别的地方发过,但是后来发现有bug,处理windows下带有空格的长文件夹会出错.因为原来那个帖子已经不能编辑了,所以修改后写在这里. 这里的“dos”,就是windows下的命令行窗口,所 ...
 - python 常用函数集合
			
1.常用函数 round() : 四舍五入 参数1:要处理的小数 参数2:可选,如果不加,就是不要小数,如果加,就是保留几位小数 abs() :绝对值 ...
 - 使用IDEA连接mysql后不显示表的解决方案
			
使用idea连接mysql后显示如下: 没有显示我们要看的数据表.?????????? 解决方法: 点设置: 选择要看的数据库名称,保存后就OK了.
 - Wireshark抓包与常见问题解决
			
简介 Wireshark是一个网络抓包分析软件,当线上出现各种连接相关的问题,如连接不复用,大量CLOSE_WAIT时,可以方便的使用Wireshark抓包软件进行抓包分析 安装 Wirewark在w ...
 - dive:一款按层分析docker镜像的工具
			
原文链接:https://www.freebuf.com/sectool/191596.html 要分析Docker镜像,只需使用image tag/id/digest运行: dive <you ...
 - cinder-volume服务上报自己的状态给cinder-scheduler的rpc通信代码分析
			
以juno版本为基础,主要从消息的生产者-消费者模型及rpc client/server模型来分析cinder-volume是如何跟cinder-scheduler服务进行rpc通信的 1.cinde ...
 - Asp.net Core启动流程讲解(四)
			
Asp.net Core内 DI(DependencyInjection)贯穿了项目的始终,要学习Asp.net Core就无法越过DI. 下面讲解一下DI在Asp.Net Core内的流程 asp. ...
 - 基于ABP 底层代码生成器
			
ABPBuilder.Tools 基于ABP 底层代码生成器 界面预览: 生成结果: 界面很简单,输入数据库连接字符串,选择要生成的表后,就能在桌面生成底层代码,然后复制到项目里即可. 做这个生成器的 ...
 - UnitTest单元测试框架解析【实用篇】
			
UnitTest是展开自动化测试的基础——这个框架很重要!首先我们先自己写一个测试类: 1.被测试类 Widthget.py: # coding: utf-8class Widthget: def _ ...