selenium之鼠标、键盘操作

鼠标操作

在WebDriver中,将这些关于鼠标操作的方法封装在ActionChains类提供

  1. 鼠标左击click()
WebDriver driver = new ChromeDriver();
driver.get("https://www.baidu.com");
Actions action = new Actions(driver);
//获取元素
WebElement linkText = driver.findElement(By.linkText("新闻"));
//将元素传给Actions对象并执行左击操作
//注意一定要执行perform()进行提交!!!
action.click(linkText ).perform();
  1. 鼠标右击contextClick()
......
action.contextClick(linkText ).perform();
  1. 鼠标双击doubleClick()
    操作同上即可
  2. 鼠标释放release()
  3. 鼠标移动moveToElement()
    将鼠标移动到指定元素的位置
WebDriver driver = new ChromeDriver();
driver.get("http://www.baidu.com/");
Actions action = new Actions(driver);
WebElement text = driver.findElement(By.linkText("设置"));
action.moveToElement(text ).perform();
  1. 鼠标悬停clickAndHold()
    鼠标悬停在指定元素位置,即点击但不释放
    action.clickAndHold(element) 相当于 action.moveToElement(element).clickAndHold()
    用一段代码来解释
WebDriver driver = new ChromeDriver();
driver.get("http://www.baidu.com/");
Actions action = new Actions(driver);
WebElement text = driver.findElement(By.linkText("新闻"));
//将鼠标悬停在【新闻】元素上,处于点击但未释放状态
action.clickAndHold(text ).perform();
Thread.sleep(2000);
//将鼠标释放
action.release().perform();
  1. 鼠标拖拽dragAndDrop()
    action.dragAndDrop(source, target)相当于action.clickAndHold(source).moveToElement(target)

键盘操作

在WebDriver中,将这些关于键盘操作的方法封装在Keys类提供,另外,**sendKeys()**不仅可以模拟键盘输入,还可以用它来输入键盘上的按键, 甚至是组合键, 如 Ctrl+A、 Ctrl+C 等

操作方法 操作说明
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
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章