WebDriver使用Actions对象模拟鼠标键盘操作
模拟双击操作
1. 模拟双击一个div,验证点击之前的字体为14号
2. 点击后字体为20号
Actions builder = new Actions(driver); //new 出Actions对象
builder.doubleClick(message).build().perform(); //对象后可以跟一系列的操作,要通过跟着build().perform()才能执行
package com.example.tests; import static org.junit.Assert.*; import org.junit.*; import org.openqa.selenium.*; import org.openqa.selenium.firefox.FirefoxDriver; import org.openqa.selenium.interactions.Actions; public class Selenium2 { WebDriver driver = new FirefoxDriver(); @Test public void tableTest() { driver.get("D:\\demo\\DoubleClickDemo.html"); WebElement message = driver.findElement(By.id("message")); // 验证初始字体为14px assertEquals("14px", message.getCssValue("font-size")); Actions builder = new Actions(driver); builder.doubleClick(message).build().perform(); // 验证点击后字体变为20px assertEquals("20px", message.getCssValue("font-size")); driver.close(); } }
模拟拖拽操作
使用dragAndDrop(source,targe)方法
package com.example.tests; import static org.junit.Assert.*; import org.junit.*; import org.openqa.selenium.*; import org.openqa.selenium.ie.InternetExplorerDriver; import org.openqa.selenium.interactions.Actions; public class Selenium2 { @Test public void testDragDrop() { WebDriver driver = new InternetExplorerDriver(); driver.get("D:\\demo\\DragAndDrop.html"); WebElement source = driver.findElement(By.id("draggable")); WebElement target = driver.findElement(By.id("droppable")); Actions builder = new Actions(driver); builder.dragAndDrop(source, target).perform(); try { assertEquals("Dropped!", target.getText()); } catch (Error e) { e.printStackTrace(); }finally{ driver.close(); } } }
本文由用户 jopen 自行上传分享,仅供网友学习交流。所有权归原作者,若您的权利被侵害,请联系管理员。
转载本站原创文章,请注明出处,并保留原始链接、图片水印。
本站是一个以用户分享为主的开源技术平台,欢迎各类分享!