5.7 WebDriver API实例讲解
本节主要详细描述WebDriver的常用API使用方法。
1.访问某网页地址
被测试网页的网址:http://www.sogou.com。
Java语言版本的API实例代码:
方法1:
public static void visitURL(){
String baseUrl="http://www.sogou.com";
driver.get(baseUrl);
}
方法2:
public static void visitURL(){
String baseUrl="http://www.sogou.com";
driver.navigate().to(baseUrl); //访问sogou首页
}
2.返回上一个访问的网页(模拟单击浏览器的后退功能)
被测试网页的网址:http://www.sogou.com, http://www.baidu.com
Java语言版本的API实例代码:
public static void visitRecentURL(){
String url1="http://www.sogou.com";
String url2="http://www.baidu.com";
driver.navigate().to(url1); //先访问sogou首页
driver.navigate().to(url2); //再跳转访问Baidu首页
driver.navigate().back(); //返回到上一次访问的sogou首页页面
3.从上次访问网页前进到下一个网页(模拟单击浏览器的前进功能)
被测试网页的网址:http://www.sogou.com, http://www.baidu.com
Java语言版本的API实例代码:
public static void visitNextURL(){
String url1="http://www.sogou.com";
String url2="http://www.baidu.com";
driver.navigate().to(url1); //先访问sogou首页
driver.navigate().to(url2); //再跳转访问Baidu首页
driver.navigate().back(); //返回到上一次访问的sogou首页页面
driver.navigate().forward(); //从sogou首页页面跳转到Baidu首页
}
4.刷新当前网页
被测试网页的网址:http://www.sogou.com, http://www.baidu.com
Java语言版本的API实例代码:
public static void freshCurrentPage(){
String url="http://www.sogou.com";
driver.navigate().to(url); //访问sogou首页
driver.navigate().refresh(); //刷新当前页面
}
5.操作浏览器窗口
被测试网页的网址:http://www.sogou.com。
Java语言版本的API实例代码:
public static void operateBrowser(){
//声明一个Point对象,两个150表示浏览器的位置相对于屏幕左上角(0,0)的横坐标举例和纵坐标举例
Point point=new Point(,);
//声明Dimension对象,两个500表示浏览器窗口的长度和宽度
Dimension dimension=new Dimension(,);
//setPosition方法表示设定浏览器在屏幕上的位置为point对象的坐标(150,150),在某些版本浏览器下次方法失效
driver.manage().window().setPosition(point);
//setSize方法表示设定浏览器窗口的大小为长为500个单位和宽为500个单位
driver.manage().window().setSize(dimension);
//getPosition方法表示获取浏览器在屏幕的位置,在某些浏览器版本下次方法失效
System.out.println(driver.manage().window().getSize());
//maximize方法表示将浏览器窗口最大化
driver.manage().window().maximize();
driver.get("http://www.sogou.com");
}
6.获取页面的Title属性
被测试网页的网址:http://www.sogou.com。
Java语言版本的API实例代码:
public static void getTitle(){
driver.get("http://www.sogou.com");
//调用driver的getTitle方法获取页面的Title属性
String title=driver.getTitle();
//打印从当前页面获取的Title内容
System.out.println(title);
}
7.获取页面的源代码
public static void getPageSource(){
driver.get("http://www.sogou.com");
String pageSource=driver.getPageSource();
System.out.println(pageSource);
}
8.获取当前页面的URL地址
public static void getCurrentPageUrl(){
driver.get("http://www.sogou.com/");
String CurrentPageUrl=driver.getCurrentUrl();
System.out.println(CurrentPageUrl);
}
9.在输入框中清除原有的文字内容
public static void clearInputBoxText(){
WebElement input=driver.findElement(By.id("text"));
input.clear();
}
10.在输入框中输入指定内容
public static void clearInputBoxText(){
String inputString="测试工程师指定的输入内容";
WebElement input=driver.findElement(By.id("text"));
input.clear(); //首先清除文本框中的原有内容,防止原有内容影响测试结果,建议都清除掉
input.sendKeys(inputString);
}
11.单击按钮
public static void clickButton(){
WebElement button=driver.findElement(By.id("button"));
button.click();
}
12.双击某个元素
public static void doubleClick(){
WebElement inputBox=driver.findElement(By.id("inputBox"));
Actions builder=new Actions(driver);
builder.doubleClick(inputBox).build().perform();
}
13.操作单选下拉列表
被测试的网页Demo1下载
public static void operateDropList(){
driver.get("file:///D:/%E6%95%99%E5%AD%A6/2015-2016-2/%E8%AF%BE%E4%BB%B6/w9/SeleniumDemo/files/Demo1/demo.html");
Select dropList=new Select(driver.findElement(By.name("select")));
System.out.println("此下拉列表是否允许多选:"+dropList.isMultiple()); System.out.println("当前选中的选项文本是:"+dropList.getFirstSelectedOption().getText()); dropList.selectByIndex();
System.out.println("下拉列表第3项是:"+dropList.getFirstSelectedOption().getText()); dropList.selectByValue("saab");
System.out.println("希望选中值为saab,当前选中的选项文本是:"+dropList.getFirstSelectedOption().getText()); dropList.selectByVisibleText("奥迪");
System.out.println("希望选中文字为奥迪,当前选中的选项文本是:"+dropList.getFirstSelectedOption().getText());
}
14.检查单选列表的选项文字是否符合期望
public static void checkSelectText(){
driver.get("file:///D:/%E6%95%99%E5%AD%A6/2015-2016-2/%E8%AF%BE%E4%BB%B6/w9/SeleniumDemo/files/Demo1/demo.html");
Select dropList=new Select(driver.findElement(By.name("select")));
List<String> expect_options=Arrays.asList((new String[]{"沃尔沃","萨博","欧宝","奥迪"}));
List<String> actual_option=new ArrayList<String>();
for(WebElement option:dropList.getOptions())
{
actual_option.add(option.getText());
}
if(expect_options.equals(actual_option))
System.out.println("一致");
else
System.out.println("不一致");
}
15.操作多选的选择列表
public static void operateMultipleOptionDropList(){
driver.get("file:///D:/%E6%95%99%E5%AD%A6/2015-2016-2/%E8%AF%BE%E4%BB%B6/w9/SeleniumDemo/files/Demo1/demo.html");
Select dropList=new Select(driver.findElement(By.name("fruit")));
System.out.println("此下拉列表是否允许多选:"+dropList.isMultiple()); dropList.selectByIndex();
dropList.selectByValue("shanzha");
dropList.selectByVisibleText("荔枝");
sleep();
dropList.deselectAll();
sleep(); dropList.selectByIndex();
dropList.selectByValue("shanzha");
dropList.selectByVisibleText("荔枝");
sleep();
dropList.deselectByIndex();
sleep();
dropList.deselectByValue("shanzha");
sleep();
dropList.deselectByVisibleText("荔枝");
}
5.7 WebDriver API实例讲解的更多相关文章
- 5.6 WebDriver API实例讲解(16-30)
16.操作单选框 被测试的网页为Demo1. Java语言版本的API实例代码: public static void operateRadio(){ driver.get("file:// ...
- 5.6 WebDriver API实例讲解(31-35)
31.判断页面元素是否存在 public static void testElementExist(){ driver.get("http://www.sogou.com"); t ...
- 5.6 WebDriver API实例讲解(31-40)
31.判断页面元素是否存在 public static void testElementExist(){ driver.get("http://www.sogou.com"); t ...
- 5.6 WebDriver API实例讲解(41-50)
41.操作Web页面的滚动条 (1)滑动页面的滚动条到页面的最下面. (2)滑动页面的滚动条到页面的某个元素. (3)滑动页面的滚动条向下移动某个数量的像素. package apiSample; i ...
- WebDriver API 实例详解(四)
三十一.使用页面的文字内容识别和处理新弹出的浏览器窗口 被测试网页的HTML源码: <html> <head> <meta charset="UTF-8&quo ...
- WebDriver API 实例详解(三)
二十一.模拟鼠标右键事件 被测试网页的网址: http://www.sogou.com Java语言版本的API实例代码: package test; import org.testng.annota ...
- WebDriver API 实例详解(二)
十一.双击某个元素 被测试网页的html源码: <html> <head> <meta charset="UTF-8"> </head&g ...
- WebDriver API 实例详解(一)
一.访问某网页地址 被测试网页的网址: http://www.baidu.com Java语言版本的API实例代码: 方法1: package test; import org.testng.anno ...
- Selenium WebDriver Api 知识梳理
之前一直没有系统的梳理WebDriver Api的相关知识,今天借此机会整理一下. 1.页面元素定位 1.1.8种常用定位方法 # id定位 driver.find_element_by_id() # ...
随机推荐
- Duilib自定义控件响应指定命令(转载)
转载:http://blog.csdn.net/panxianzhan/article/details/50772893 duilib在UIManager.h里的EVENTTYPE_UI枚举里定义了很 ...
- iOS开发debug跟release版本屏蔽NSLog方法
1.在***-Prefix.pch里面添加 #ifndef __OPTIMIZE__ # define NSLog(...) NSLog(__VA_ARGS__) #else # define NSL ...
- SD卡驱动分析(二)
三.下面分析一下高通的android2.3的代码中SD卡驱动的流程. 在kernel中,SD卡是作为平台设备加入到内核中去的,在/kernel/arch/arm/mach-msm/devices-ms ...
- BZOJ 2324 营救皮卡丘(最小费用最大流)
题目链接:http://61.187.179.132/JudgeOnline/problem.php?id=2324 题意:n+1个城市(0到n).初始时K个 人都在0城市.城市之间有距离.要求(1) ...
- D django 用户认证系统
django认证系统包含三个部分:用户.权限和分组 安装 django项目默认启用了认证系统,如果不是使用django-admin.py创建项目的可以通过在settings配置文件里面的INSTALL ...
- Vmware10.0 安装系统以及使用笔记
1.安装教程参考 大致分为:vmware10.0安装-------建立虚拟机---------设置虚拟机---------启动虚拟机(IOS安装)---------安装系统---------安装vmt ...
- CSRF的防御实例(PHP)
CSRF的防御可以从服务端和客户端两方面着手,防御效果是从服务端着手效果比较好,现在一般的CSRF防御也都在服务端进行. 1.服务端进行CSRF防御 服务端的CSRF方式方法很多样,但总的思想都是一致 ...
- 【VB6笔记-01】 读取Excel绑定到DataGrid
Private Sub cmdOpen_Click() CommonDialog1.Filter = "Excel???t(*.xlsx)|*.xlsx" CommonDialog ...
- StopWatch的使用
//StopWatch在System.Diagnostics命名控件,要使用它就要先引用这个命名空间. //其使用方法如下: //var stopWatch = new StopWatch(); // ...
- GATK3.2.2小结(转载)
http://blog.csdn.net/skenoy/article/details/38346489 经过几天的摸索和网上资料的查询对GATK软件有点小心得,现总结如下: 1. fasta文件最好 ...