- WebDriver高级篇 - 模拟键盘操作
- 7、模拟键盘操作
- 7.1 模拟键盘操作(sendkeys)
- 7.2 模拟键盘操作 (actions)
只能模拟键盘
System.setProperty("webdriver.chrome.driver", "D:/Program Files/Java/jdk1.8.0_141/bin/chromedriver.exe");
WebDriver Demo19_monijianpan=new ChromeDriver();
Demo19_monijianpan.manage().window().maximize();//浏览器最大化
Thread.sleep(3000);
Demo19_monijianpan.get
("file:///C:/Users/Administrator/Desktop/autoTest/bootstrap-snippet-login-form/login2.html");
WebElement el1 = Demo19_monijianpan.findElement(By.name("username"));
WebElement el2 = Demo19_monijianpan.findElement(By.name("password"));
el1.sendKeys("ceshiming");
Thread.sleep(3000);
el1.sendKeys(Keys.CONTROL+"a");
el1.sendKeys(Keys.CONTROL+"c");
el2.sendKeys(Keys.CONTROL+"v");
el2.sendKeys(Keys.TAB);
Thread.sleep(3000);
Demo19_monijianpan.quit(); //退出WebDriver
7.2 模拟键盘操作 (actions)
除了模拟键盘,还可以模拟鼠标
- KeyDown:模拟键盘按下
- KeyUp: 模拟键盘松开
- doubleClick:双击
- contextClick:右击
- clickAndHold:表示模拟鼠标左键点击然后不放开
- release:放开
- moveToElement:移动到某一个元素上去
- dragAndDrop:拖拽某一元素
Actions action = new Actions(Demo19_monijianpan);
WebElement btn = Demo19_monijianpan.findElement(By.className("btnlogin"));
action.click(btn).perform();
action.moveToElement(el1);
action.keyDown(Keys.CONTROL).sendKeys("a").keyUp(Keys.CONTROL).perform();
除了以上两种方式之外,还有一种基于robot的方式
参考:WebDriver应用实例(java)——Robot对象操作键盘



