鼠标、键盘事件
鼠标事件
Actions 类提供了鼠标操作的常用方法:
· contextClick() 右击
· clickAndHold() 鼠标点击并控制
· doubleClick() 双击
· dragAndDrop() 拖动
· release() 释放鼠标
· perform() 执行所有Actions中存储的行为
鼠标右击操作。
导入提供鼠标操作的ActionChains 类
Actions(driver)
调用Actions()类,将浏览器驱动driver作为参数传入。
contexClick(xxx)
contextClick()方法用于模拟鼠标右键操作,在调用时需要指定元素定位。
perform() 执行所有ActionChains中存储的行为,可以理解成是对整个操作的提交动作。
action.contextClick(driver.findElement(By.className("cnisdisd"))).perform();
鼠标悬停。clickAndHold();
action1.clickAndHold(driver.findElement(By.linkText("设置"))).perform();
鼠标双击操作。
doubleClick()方法用于模拟鼠标双击操作。
action1.doubleClick(driver.findElement(By.className(""))).perform();
鼠标拖放操作。
drag_and_drop(source, target)在源元素上按下鼠标左键,然后移动到目标元素上释放。
·source:鼠标拖动的源元素。
·target:鼠标释放的目标元素。
WebElement source=driver.findElement(By.className("element")); WebElement target=driver.findElement(By.className("element")); action1.dragAndDrop(source, target).perform();
释放鼠标
release()方法用于释放鼠标事件。
action1.release().perform();
键盘事件
使用键盘按键方法前需要先导入keys类。
以下为常用的键盘操作:
sendKeys(Keys.BACK_SPACE) 删除键(BackSpace)
sendKeys(Keys.SPACE) 空格键(Space)
sendKeys(Keys.TAB) 制表键(Tab)
sendKeys(Keys.ESCAPE) 回退键(Esc)
sendKeys(Keys.ENTER) 回车键(Enter)
sendKeys(Keys.CONTROL,'a') 全选(Ctrl+A)
sendKeys(Keys.CONTROL,'c') 复制(Ctrl+C)
sendKeys(Keys.CONTROL,'x') 剪切(Ctrl+X)
sendKeys(Keys.CONTROL,'v') 粘贴(Ctrl+V)
sendKeys(Keys.F1) 键盘F1
……
sendKeys(Keys.F12) 键盘F12