[Selenium]计算坐标进行拖拽,重写dragAndDropOffset
2015-05-29 09:18
113 查看
//@author jzhang6 public void dragAndDropOffset(WebDriver driver,WebElement dragableEl, WebElement dropableEl, int offsetX, int offsetY){ Actions action = new Actions(driver); action.clickAndHold(dragableEl).build().perform(); action.moveByOffset(offsetX, offsetY); action.release(dropableEl); action.build().perform(); }
//@author jzhang6 public void dragWidget(String widgetName){ WebElement widgetIconEl=page.getWidgetIconInDockMenu(widgetName); ((JavascriptExecutor) driver).executeScript("arguments[0].scrollIntoView();", widgetIconEl); WebElement workspaceEl=page.getWorkSpace(); Point initialPositon = widgetIconEl.getLocation(); Point targetPositon = workspaceEl.getLocation(); int offsetX = (targetPositon.getX() - initialPositon.getX())/2; int offsetY = (targetPositon.getY() - initialPositon.getY())/2; System.out.println("Drag widget to : ("+offsetX+","+offsetY+")"); WebElement dropableEl=page.getDropableIconInWorkspace(); this.dragAndDropOffset(driver,widgetIconEl,dropableEl,offsetX, offsetY); SeleniumUtil.waitUntilAllAjaxRequestCompletes(driver); this.waitForLoadingDoneInNewWebPage(driver); }
相关文章推荐
- Using a loopback device for storage  使用环回设备用于存储
- linxu中删除指定时间之前的文件shell脚本
- linux下删除某一时间段的文件
- Docker
- 分布式架构的演进
- org.apache.catalina.core.StandardWrapperValve invoke的解决办法
- SHELL脚本if语句
- 密码学_小case
- Linux如何开机自动运行自己的脚本
- Linux如何查看进程、杀死进程、启动进程等常用命令
- use decision tree to solve 0-1 knapsack problem // optimal substructure
- hadoop
- 网站开发搭建开发环境
- opencv实现图像优化
- HDU5072Coprime 容斥原理+双色三角形 2014 Asia AnShan Regional Contest
- brute force method for optimal solution(0-1 knapsack problem)
- 通过JS语句判断WEB网站的访问端是电脑还是手机
- 用 Apache 和 Subversion 搭建安全的版本控制环境
- -Dmaven.multiModuleProjectDirectory system propery is not set. Check $M2_HOME environment variable and mvn script match.
- Bash 14-16