Selenium2(WebDriver)总结(四)---基本元素操作
WebDriver提供了常用的WEB控件的操作方法,比如:按钮、输入框、超链接等,废话不多说,直接上代码:
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.openqa.selenium.support.ui.Select; public class WebDriverSimple { WebDriver driver; public WebDriverSimple()
{
System.setProperty("webdriver.firefox.bin", "D:/Program Files/Mozilla Firefox/firefox.exe");
this.driver = new FirefoxDriver();
} //启动浏览器
public void startBrowser(String url)
{
driver.get(url);
//最大化浏览器
driver.manage().window().maximize();
} //使用xpath获取元素对象
public WebElement locateElementByXpath(String locator)
{
WebElement element = driver.findElement(By.xpath(locator));
return element;
} //使用CSS获取元素对象
public WebElement locateElementByCss(String locator)
{
WebElement element = driver.findElement(By.cssSelector(locator));
return element;
} /**操作输入框input
* 1.sendKeys代表输入,参数为要输入的值
* 2.clear代表清除输入框中原有的数据
*/
public void testInput(String locator,String content)
{
//WebElement input = this.locateElementByXpath(locator);
WebElement input = this.locateElementByCss(locator);
input.clear();
input.sendKeys(content);
input.clear();
input.sendKeys(content);
} //
/**操作超链接link
* 1.click代表点击这个a链接
*/
public void testLink(String locator)
{
WebElement link = this.locateElementByXpath(locator);
link.click();
} /**操作 下拉框 select
* 1.需要一个Select的类
* 2.selectByValue的参数为option中的value属性
* 3.selectByIndex的参数为option的顺序
* 4.selectByVisibleText的参数为option的text值
*/
public void testSelect(String locator,int index)
{
WebElement element = this.locateElementByXpath(locator);
Select select = new Select(element);
select.selectByIndex(index);
}
public void testSelect(String locator,String value)
{
WebElement element = this.locateElementByXpath(locator);
Select select = new Select(element);
select.selectByValue(value);
//select.selectByVisibleText(text);
} /**操作单选按钮radiobox
* 1.click代表点击选中这个单选框
* 2.isSelected代表检查这个单选框有没有被选中
*/
public void testRaidoBox(String locator)
{
WebElement radio = this.locateElementByXpath(locator);
radio.click();
radio.isSelected();
} /**操作 复选框checkbox
* 1.click代表点击选中这个多选框
* 2.isSelected代表检查这个多选框有没有被选中
*/
public void testCheckBox(String locator)
{
WebElement checkbox = this.locateElementByXpath(locator);
checkbox.click();
checkbox.isSelected();
} /**操作 按钮button
* 1.click代表点击这个按钮
* 2.sEnabled代表检查这个按钮是不是可用的
*/
public void testButton(String locator)
{
WebElement submit = this.locateElementByXpath(locator);
submit.click();
submit.isEnabled();
}
/**操作 上传控件upload
* 1.一般是把路他径直接sendKeys到这个输入框中
* 2.如果输入框被加了readonly属性,不能输入,则需要用JS来去掉readonly属性!
*/
public void testUpload(String locator,String path)
{
WebElement load = this.locateElementByXpath(locator);
load.sendKeys(path);
}
//关闭并退出driver
public void closeBrowser()
{
driver.close();
driver.quit();
}
}
Selenium2(WebDriver)总结(四)---基本元素操作的更多相关文章
- Selenium2(WebDriver)总结(五)---元素操作进阶(常用类)
1.Alert类 Alert是指windows弹窗的一些操作,需要new一个Alert类 driver.switchTo().alert():切换到alert窗口 alert.getText():取得 ...
- selenium2 Webdriver + Java 自动化测试实战和完全教程
selenium2 Webdriver + Java 自动化测试实战和完全教程一.快速开始 博客分类: Selenium-webdriverselenium webdriver 学习selenium ...
- webDriver对element进行操作
非常感谢原作者:eastmount,原地址:http://blog.csdn.net/eastmount/article/details/48108259 感谢感谢 这篇文章主要Seleniu ...
- selenium2 WebDriver 在asp.net项目中的应用
selenium2 WebDriver是一款跨平台的 自动化测试工具,它可以操纵浏览器,模拟用户行为,非常方便用户进行自动化测试. .net项目使用它,首先要通过 Visual Studio 的 nu ...
- selenium2(WebDriver) API
selenium2(WebDriver) API 作者:Glen.He出处:http://www.cnblogs.com/puresoul/ 1.1 下载selenium2.0的包 官方downl ...
- Selenium2(WebDriver)总结(一)---启动浏览器、设置profile&加载插件
本文主要记录下在使用selenium2/webdriver时启动各种浏览器的方法.以及如何加载插件.定制浏览器信息(设置profile)等 环境搭建可参考我的另一篇文章:http://www.cnbl ...
- AJAX的来龙去脉(由来)-如何被封装出来的--ajax发送异步请求(四步操作)
<黑马程序员_超全面的JavaWeb视频教程vedio\JavaWeb视频教程_day23_ajax> \JavaWeb视频教程_day23_ajax\day23ajax_avi\14.打 ...
- Selenium2(WebDriver)总结(二)---Firefox的firebug插件参数设置(补充)
本文是对上一节的补充:http://www.cnblogs.com/puresoul/p/4251536.html 使用Selenium2(webdriver)启动firefox且自动加载firebu ...
- Git 学习(四)操作修改和版本穿梭
Git 学习(四)操作修改和版本穿梭 之前的章节,已介绍了本地Git库创建.暂存区增.删.改,以及提交版本库:可回顾下命令操作: git add 和 git commit. 光有之前章节的操作,Git ...
随机推荐
- CAD扩展属性的提取--FME方式
一.CAD的扩展属性 了解一下CAD的扩展属性方式,CAD的扩展属性包括二类: 基于CAD二次开发的软件产品(例如南方cass),其扩展属性是附属在图形(点.多段线.注记.面)上面的,它是以XReco ...
- iOS越狱知多少?
著名iOS黑客团队Evad3rs上周上线了evasi0n 官网,用于展示他们破解iOS 6 和iOS 6.1 系统的进度.据官网显示,其越狱工具evasi0n已正式上线,支持iPhone.iPad等 ...
- Oracle APEX 5.1 with Ords 17 in Tomcat 9–Error tips: 请求无法映射到任何数据库。请确保请求 URL 正确, 并且已正确配置 URL 到数据库的映射
一次意外关机引发的血案 1.重新开机打开 tomcat 9, 一切正常 2.打开 ords,异常报错: 404 Not Found 请求无法映射到任何数据库.请确保请求 URL 正确, 并且已正确配置 ...
- jQuery Pagination分页插件
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- Ubuntu Linux下安装Oracle JDK
from://http://blog.csdn.net/gobitan/article/details/24322561 Ubuntu Linux下安装Oracle JDK Dennis Hu 201 ...
- 《王者荣耀》技术总监复盘回炉历程:没跨过这三座大山,就是另一款MOBA霸占市场了
如今已经大获市场成功的<王者荣耀>一直是业内各方关注的对象,而我们也知道这款产品在成为国民级游戏之前,也遇到过一段鲜有人知的调优期.也就是在2015年8月18号正式不删档测试版本推出之后, ...
- lemon OA 我长时间经历的第一个开源项目
对于原作者来说, 他长时间运营了一个项目,lemon OA .目前,八百多star.在运营这个项目的过程中,我想说,他成了activiti 目前国内比较牛逼的几个人.还有 spring securit ...
- ArrayList 排序方法的性能对比
20000=>ZXP 二分法 getSeriesMinSort2(list) Time is 67000 20000=>循环 getSeriesMinSortFor(list) Time ...
- ios成长之每日一遍(day 3)
今天要介绍一下更多的控键使用, 当然也会对上一篇说的控件做一个巩固, 所以这一篇涉及到的控键会包括 UIImage.UITextField.UIButton.UILabel.UISwitch.以及 U ...
- [Android Security] 静态分析Android程序——smali文件解析
cp : https://blog.csdn.net/hp910315/article/details/51823236 cp : http://www.jb51.net/softjc/119036. ...