selenium:如何模拟鼠标拖放(drag and drop)
鼠标拖放是手工常用操作,可以用于移动元素,如,用于拖放验证码滑块等,以大麦网登录界面验证码滑块为例,介绍如下:
driver.SwitchTo().Frame(driver.FindElement(By.XPath("//iframe[@id='baxia-dialog-content']"))); //滑块在iframe框架内,需先切换到iframe
IWebElement slider = driver.FindElement(By.XPath("//span[contains(@class,'slide')]")); //定位滑块
int slide_w = slider.Size.Width; //获取滑块宽度
IWebElement slider_con = driver.FindElement(By.XPath("//span[text()='请按住滑块,拖动到最右边']")); //定位滑动条
int slider_con_w = slider_con.Size.Width; //获取滑动条宽度
int offset = slider_con_w - slide_w; //计算滑动宽度
/********以下为拖动实现**********/
Actions action = new Actions(driver);
action.ClickAndHold(slider).Perform();
action.DragAndDropToOffset(slider, offset, 0).Perform();
(有用或者喜欢的话,可以点个赞,或者关注我,带你了解更多测试知识和行业信息)
selenium:如何模拟鼠标拖放(drag and drop)相关推荐
- html5css3菜鸟教程,HTML5+CSS3实现拖放(Drag and Drop)示例
本文简单介绍一下HTML5的拖放实现.MXGHTML5中文学习网 - HTML5先行者学习网 拖放(Drag 和 drop)是 HTML5 标准的组成部分.MXGHTML5中文学习网 - HTML5先 ...
- [Ext JS 4] 拖放[drag and drop]
定义拖放 一个拖动操作,就是在某个页面元素上按下鼠标并移动.一个放下操作,就是在拖动动作之后放开鼠标.可以从下图来看: Ext JS 的Ext.dd 类中定义了基本的拖放操作. 拖放类的组织 所有的拖 ...
- selenium webdriver模拟鼠标键盘操作
在测试使用Selenium webdriver测试WEB系统的时候,用到了模拟鼠标.键盘的一些输入操作. 1.鼠标的左键点击.双击.拖拽.右键点击等: 2.键盘的回车.回退.空格.ctrl.alt.s ...
- selenium+Java模拟鼠标操作
在selenium中,针对鼠标的一些操作都被封装在Actions类中,在需要使用的时候,导入Actions类即可调用相关的方法,使用actions类方法时,每个方法后面需要跟上perform()方法才 ...
- html拖放数据库字段,利用HTML5拖放(Drag 和 Drop)实现Table间数据的交互
前言 作为开发者,我们总是会不经意间的遇到一些令人头疼的需求.比如五彩斑斓的黑,根据手机壳变换APP的颜色等等,你说怎么办.虽然在一般情况下不会这么棘手,但是有些需求刚拿到的时候还是会一筹莫展. 表格 ...
- H5 拖放drag跟drop
H5的拖放功能主要是通过drag和drop来实现的,目前IE9.Firefox.Opera 12.Chrome 以及 Safari 5 是支持拖放的,Safari 5.1.2 中不支持拖放.下面先放一 ...
- 拖放(Drag和Drop)--html5
拖放,就是抓取一个对象后拖放到另一个位置.很常用的一个功能,在还没有html5的时候,我们实现这个功能,通常会用大量的js代码,再利用mousemove,mouseup等鼠标事件来实现,总的来说比较麻 ...
- Qt拖放 drag and drop
拖放提供一个应用程序之间传递信息的一种简单的可视化机制.拖放机制类似于剪切和粘贴机制.拖放操作同时被QT项目视图和图形视图框架支持. QApplication提供了两个拖放相关的方法: 1. QApp ...
- HTML5 拖放Drag和drop用法以及事件介绍
dragstart:拖拽开始时在被拖拽元素上触发此事件 drag:拖拽过程中被拖拽的元素会持续不断地发drag事件. dragend:鼠标在拖放目标上释放时,在拖搜元素上触发,将元素从浏览器拖放到操作 ...
- Selenium:模拟鼠标操作
鼠标操作:左键单击,右键点击,左键双击,箭头移动,托拉拽 一般左键单击直接用 click() 左键单击 其它类模拟方式定义在org.openqa.selenium.interactions.Actio ...
最新文章
- C语言之计算大数阶乘,如计算100!和1000!等~~~
- 图解数据中心水系统标准和架构(大全)
- 《深入理解Elasticsearch(原书第2版)》一2.2 查询改写
- 邮件系统磁盘监控脚本
- [2020.11.26NOIP模拟赛]勇者的后缀【SA,RMQ,主席树,二分】
- Java和甜蜜的科学
- [ios]UITableViewCell自适应高度 【转】
- LeetCode 894. 所有可能的满二叉树(递归)
- JSP/Servlet中的几个编码的作用
- Unity面试题精选(1)
- O2O年度反思:流量不再为王不赚钱就得死
- ASP.NET MVC 5– 使用Wijmo MVC 5模板1分钟创建应用
- unity, itween 对不透明对象使用FadeTo需要先更换material
- 生成Apk签名证书keystore,openssl与证书,keystore,jks,pem/pk8
- 现在还有必要安装第三方杀毒软件吗?
- ARM开发(二)ARM体系结构——ARM,数据和指令类型,处理器工作模式,寄存器,状态寄存器,流水线,指令集,汇编小练习题
- [半监督学习] Tri-Training: Exploiting Unlabeled Data Using Three Classifiers
- iis7.5如何将应用程序池的启动模式(startMode)从onDemand(需要时)更改为AlwaysRunning(一直运行)?
- ctf之crypto练习二
- 华硕主板反复进入BIOS以及无法识别固态硬盘?
热门文章
- golang的dep和vender
- Python code on Sliced Inverse Regression ( SIR ) and Sliced Average Variance Estimates ( SAVE )
- pandas从excel导入数据,写入数据库
- This is probably not a problem with npm. There is likely additional logging 报错
- HCIA网络基础9-VRP文件系统管理
- 【UE4大数据可视化教程序章一】——生成城市与道路模型
- java文本域_Java Swing JTextArea:文本域组件
- UE5笔记【四】UE5主材质Master Materials和材质实例MI
- 高德地图-添加自定义图标
- linux 创建 swap分区