selenium中录制拖拽动作
今天工作中遇到了selenium中录制拖拽动作需求:在同一个页面上,将一个table中的元素拖拽到另外一个table中。
通过查看帮助文档是使用dragAndDrop或类似的命令。根据使用方法dragAndDrop(locator, movementsString),写入下面的脚本:
<tr>
<td>dragAndDropToObject</td>
<td>//div/div/div/table/tbody/tr[2]/td/div</td>
<td>+652,+638</td>
</tr>
运行后,命令运行通过但是并没有实现拖拽动作。从网上百度后,发现好多网友说dragAndDrop命令不太好用,可以通过鼠标事件模拟拖拽。因此借鉴过来,写入命令如下:
<tr>
<td>mouseDownAt</td>
<td>//div/div/div/table/tbody/tr[2]/td/div</td>
<td>+394,+156</td>
</tr>
<tr>
<td>mouseMove</td>
<td>//div/div/div/table/tbody/tr[2]/td/div</td>
<td></td>
</tr>
<tr>
<td>mouseUpAt</td>
<td>//td[2]/div</td>
<td>+652,+638</td>
</tr>
运行后实现了拖拽动作。具体的mouseDownAt、mouseMove、mouseUpAt命令可以查看selenium帮助文档。有其它网友是通过mouseDownAt、mouseMoveAt、mouseUpAt命令实现的,感觉思想差不多吧,只有能实现效果就可以。
顺便说一下,由于mouseDownAt、mouseMoveAt、mouseUpAt命令的第二个参数都是坐标,那么获得元素的具体坐标也很关键。之前为如何查看页面元素坐标纠结,后来同事说有的截图软件可以查看,突然想起以前HyperSnap截图软件是可以显示坐标的。于是乎下载安装,坐标问题迎刃而解。
接下来将继续学习dragAndDrop命令,如果大家有使用成功的希望分享下。
selenium中录制拖拽动作相关推荐
- eclipse插件开发:自定义导航器中的拖拽定义
有时候需要对导航器中的拖拽对象进行赋值,使用的场景是,拖拽导航器中的某个文件或者类或方法等,到某个编辑器中,, 因为默认的导航器所配备的拖拽动作,或则不能满足我们的需要,所有,有必要自定义,,拖拽器, ...
- 百度空间中实现拖拽、悬浮窗口效果的popup.js分析
var Popup=new Class(); Popup.prototype={ //弹出窗口中框架的name名称 iframeIdName:'ifr_popup', initialize:funct ...
- .net中实现拖拽控件
在.net中实现拖拽控件主要用到以下函数: MouseDown(object sender, MouseEventArgs e) MouseUp(object sender, MouseEventAr ...
- 中如何使用echart_jQueryEasyUI中的拖拽事件如何使用
jQueryEasyUI中的拖拽事件通过给它设置代理元素使其拖拽.可设置拖动元素相对于x.y轴拖动,可设置拖拽何时停止等效果 jQuery中的easyui是一个非常好用的插件,它虽然使用简单方便,但是 ...
- java swing 控件拖动_java swing中实现拖拽功能示例
java实现拖拽示例 Swing中实现拖拽功能,代码很简单,都有注释,自己看,运行效果如下图: package com; import java.awt.*;import java.awt.datat ...
- JavaScript中的拖拽事件且限制出界
JavaScript中的拖拽事件限制出界 JavaScript事件中很多都会用到拖拽,而在现实中很多拖拽是会限制在浏览器界面禁止出界的,下面是封装好的限制出界的拖拽事件. function drag( ...
- vue中实现拖拽排序
原生拖拽 API 实现拖拽 设置元素 dragable 将元素的 dragable 属性设置 为 true (文本 图片 链接 的draggable 属性默认为 true)则元素可拖放 <div ...
- xd怎么做页面滑动_XD教程 | 如何在XD中制作拖拽手势”
原标题:XD教程 | 如何在XD中制作"拖拽手势" 今日主题:设计一个滑动交互 使用工具:Adobe XD 预计时长:1-2分钟 实用指数:★★★★★ 难度系数:★ 本期教程,我们 ...
- css鼠标拖拉卡顿_vue中解决拖拽改变存在iframe的div大小时卡顿问题
写在最前 针对于在vue中实现拖拽改变两左右个div大小的方式,请查看上一篇文章<vue中实现拖动调整左右两侧div的宽度>.此文章主要针对于实际应用中需要拖拽改变大小的组件中使用ifra ...
最新文章
- 进程间基于消息队列的通信_Linux 进程间的通信方式
- appium+python 操作APP
- 苹果发布iOS 12.3.1正式版:更有效的屏蔽垃圾短信
- Activiti保存.png 流程图片文件且解决idea中保存图片时显示中文乱码的解决方法
- ubuntu上安装python3.7教程_给ubuntu18安装python3.7的详细教程
- 解决LINQ to Entities does not recognize the method 'System.String Encrypt(System.String)' method, and
- @async 注解使主线程不等待
- 中山医06年考研初试复试全攻略!( 完整版)
- 多元微积分_向量函数偏导
- 启动Solr 8.10 后访问UI报错:CoreContainer is either not initialized or shutting down.
- 网络摄像头无插件直播H265编码视频播放器EasyPlayer网页播放器不能播放怎么处理?
- 短视频选题的方法脚本结构撰写
- 裸金属服务器是什么?有什么特点?
- LTspice - 基础操作2
- 月薪15k的软件测试工程师需要学习什么技术?
- php网页采集 修改版
- MSDN Library Visual Studio .NET 2003 简体中文版(ISO) 免费下载
- java 反射(二)之提高反射的方法 setAccessible(true)
- 使用库函数sqrt求平方根 C语言入门
- Python的cookies与session
热门文章
- android activty动画,Activity动画效果
- php如何写代码禁用广告,不再显示广告案例(php操作cookie)
- 分段式多级离心泵_D型卧式多级泵结构组成及工作原理
- python框架django教程_[Python] Django框架入门3——深入视图
- oracle sql分析 cost,Oracle SQL的优化技巧详解
- Python零基础入门(四)——Python面向对象编程[学习笔记]
- 测试思路系列:《谷歌的软件测试之道》读书笔记
- 贷款利息及公积金知识点
- docker创建镜像之Dockerfile
- 21天Jmeter打卡Day19 mysql数据库提取参数化