常用的WebDriver API
访问某网站
package com.wb.api; import org.openqa.selenium.WebDriver; import org.openqa.selenium.chrome.ChromeDriver; public class WebDriverTest { public static void main(String[] args) { WebDriver driver; // 设置浏览器驱动环境变量 System.setProperty("webdriver.chrome.driver", "C:\\Program Files (x86)\\ChromeCore\\chromedriver.exe"); driver = new ChromeDriver(); //方法1 driver.get("http://www.baidu.com"); //方法2 driver.navigate().to("http://www.imooc.com"); } }
单击浏览器的后退功能
//访问百度网页 driver.get("http://www.baidu.com"); //访问搜狗网页 driver.navigate().to("http://www.sogou.com"); driver.navigate().back(); //访问上一次访问的百度网页
单击浏览器的前进功能
//访问百度网页 driver.get("http://www.baidu.com"); //访问搜狗网页 driver.navigate().to("http://www.sogou.com"); driver.navigate().back(); //访问上一次访问的百度网页 driver.navigate().forward(); //跳转到搜狗网页
刷新当前页面
//刷新页面 driver.navigate().refresh();
操作浏览器窗口
//声明一个Point对象,两个100表示相对于屏幕左上角(0,0)的横坐标和纵坐标 Point point = new Point(100, 100); //声明 一个Dimension对象,两个200表示浏览器窗口的长度和宽度 Dimension dim = new Dimension(200, 200); //setPosition方法表示设定浏览器在屏幕上的位置为Point对象的坐标(100, 100) //在某些浏览器版本中此方法失效 driver.manage().window().setPosition(point); //setSize方法表示设定浏览器窗口的大小(200, 200) driver.manage().window().setSize(dim); //getPosition方法表示获取浏览器在屏幕的位置 //在某些浏览器版本中此方法失效 System.out.println(driver.manage().window().getPosition()); //getSize方法表示获取浏览器窗口的大小 System.out.println(driver.manage().window().getSize());
获取页面的Title属性
//获取页面的Title String title = driver.getTitle(); System.out.println(title);
获取页面的源代码
//获取页面的源代码 String pageSrCode = driver.getPageSource(); System.out.println(pageSrCode);
获取当前页面的URL地址
//获取页面的URL String pageUrl = driver.getCurrentUrl(); System.out.println(pageUrl);
在输入框中输入内容
//获取输入框元素WebElement searchInput = driver.findElement(By.id("kw"));//输入指定内容 searchInput.sendKeys("hello world");
清除输入框中的内容
//获取输入框元素 WebElement searchInput = driver.findElement(By.id("kw")); searchInput.sendKeys("hello world"); try { Thread.sleep(2000); } catch (InterruptedException e) { e.printStackTrace(); } //清除输入框内容 searchInput.clear();
单击按钮
//获取按钮元素 WebElement btn = driver.findElement(By.id("btn")); //单击按钮元素 btn.click();
双击某个元素
//获取输入框元素 WebElement inputEle = driver.findElement(By.id("kw")); //声明Actions对象 Actions builder = new Actions(driver); //双击输入框 builder.doubleClick(inputEle).build().perform();