- 访问某网页地址:driver.get(url) 或 driver.navigate().to(url)
- 访问上一个访问的网页(模拟单击浏览器的后退按钮)driver.navigate().back()
- 从上次访问的网页前进到下一个网页(模拟单击浏览器的前进功能)driver.navigate().forward()
- 刷新当前网页 driver.navigate().refresh()
- 操作浏览器窗口
浏览器窗口最大化:driver.manage().window().maximize();
关闭浏览器: driver.quit(); driver.close();
- 获取页面的Title属性 driver.getTitle();
- 获取页面源代码 driver.getPageSource()
- 获取当前页面的URL地址 driver.getCurrentUrl()
- 在输入框中清除原有的文字内容 driver.clear()
- 在输入框中输入指定内容 driver.sendKeys("输入的内容")
- 鼠标单击按钮 driver.click()
- 双击某个元素
Actions builder =new Actions(driver) //声明Action对象
builder.doubleClick(driver.findElement(By.id("inputbox"))).build().perform();
- 操作单选下拉列表
Select select = new Select(driver.findElement(By.id("select"))); 使用id属性找到页面上id属性为select的下拉列表元素
select.isMultiple(); 判断下拉列表是否允许多选 true:多选 false:单选
select.selectByIndex(3); 表示选中下拉列表的第四个选项,0表示第一个选项
select.selectByVisibleText(“A”); 表示通过选项文字来进行选中
select.selectByValue(“1”); 表示使用下拉列表选项的Value属性值进行选中操作,值为1
select.deselectAll(); 全部取消选中
select.deselectByValue(“1”); 取消选中某一个选项
select.deselectByVisibleText(“A”);
select.getAllSelectedOptions();
select.getFirstSelectedOption(); 获取当前被选中的下拉列表选项
select.getFirstSelectedOption().gettext(); 获取当前被选中的下拉列表选项文本
- 检查单选列表的选项文字是否符合期望
- 单选项(Radio Button)
WebElement radio=driver.findElement(By.id("BookMode"));
radio.click(); //选择某个单选项
radio.clear(); //清空某个单选项
radio.isSelected(); //判断某个单选项是否已经被选择
- 多选项(checkbox)
WebElement checkbox = driver.findElement(By.id("myCheckbox."));
checkbox.click();
checkbox.clear();
checkbox.isSelected();
checkbox.isEnabled()
- 杀掉Windows的浏览器进程
WindowsUtils.tryToKillByName("firefox.exe");
WindowsUtils.tryToKillByName("chrome.exe");
WindowsUtils.tryToKillByName("iexplore.exe");
- 将当前浏览器的窗口截屏
driver.get("http://www.baidu.com");
File scrFile=((TakesScreenshot)driver).getScreenshotAs(OutputType.FILE); 调用方法截图保存在file对象中
try {
FileUtils.copyFile(scrFile, new File("C:\test\tet.png")); 将file对象转换成为一个保存在C磁盘下test目录中文件名为test.png的图片文件
} catch (Exception e) {
e.printStackTrace();
}
- 检查页面元素的文本内容是否出现
- 执行JavaScript脚本
- 拖拽页面元素
- 模拟键盘的操作
- 弹出对话框(Popup dialogs)
Alert alert = driver.switchTo().alert();
alert.accept(); //确定
alert.dismiss(); //取消
alert.getText(); //获取文本
- 表单(Form)
Form中的元素的操作和其它的元素操作一样,对元素操作完成后对表单的提交可以:
WebElement approve = driver.findElement(By.id("approve"));
approve.click();
或
approve.submit();//只适合于表单的提交
- 上传文件
上传文件的元素操作:
WebElement adFileUpload =driver.findElement(By.id("WAP-upload"));
String filePath = "C: est\uploadfile\media_ads\test.jpg";
adFileUpload.sendKeys(filePath);
- Windows 和 Frames之间的切换
driver.switchTo().defaultContent(); //返回到最顶层的frame/iframe
driver.switchTo().frame("leftFrame"); //切换到某个frame:
driver.switchTo().window("windowName"); //切换到某个window
- 调用Java Script
Web driver对Java Script的调用是通过JavascriptExecutor来实现的,例如:
JavascriptExecutor js = (JavascriptExecutor) driver;
js.executeScript("JS脚本");
- 超时设置
WebDriver driver = new FirefoxDriver();
driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS); //识别元素时的超时时间
driver.manage().timeouts().pageLoadTimeout(10, TimeUnit.SECONDS); //页面加载时的超时时间
driver.manage().timeouts().setScriptTimeout(10, TimeUnit.SECONDS); //异步脚本的超时时间
- 操作页面元素
Click(); 执行单击元素操作
SendKeys(text) 给input元素输入文本
Clear() 清空input元素的值
Submit() 对指定元素所在的from元素进行提交操作