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 ...
随机推荐
- RichEdit控件 SDK 参考手册
RichEdit控件 SDK 参考手册 摘要: 本文对Rich Edit控件底层消息机制进行了讲解,以期读者对Windows平台下的Rich Edit控件有一个更深入的认识,同时对于使用Win32 S ...
- having只用来在group by之后,having不可单独用,必须和group by用。having只能对group by的结果进行操作
having只能对group by的结果进行操作 having只能对group by的结果进行操作 having只能对group by的结果进行操作 having只用来在group by之后,havi ...
- 【SVN】如果windows用户忘记了svn的用户名和密码怎么办?
如果windows用户忘记了svn的用户名和密码怎么办? 1>你得进入默认地址 C:\Users\Administrator\AppData\Roaming\Subversion\auth\sv ...
- Android项目更换开发环境时出现的 java.lang.VerifyError 异常解决办法
from://http://blog.csdn.net/wudiwo/article/details/7548451 项目是从同事的电脑上直接拷贝过来的,项目里面的jar包是在项目跟下libs里面存放 ...
- WordPress主题开发实例:get_term_by()获取指定分类链接
根据名称获取链接 <?php //根据名称获取对应的id $term=get_term_by('name','新闻动态','category'); $term_id=$term->term ...
- sharepoint 2013 网站集解锁
前言 最近碰到这样的一个问题,就是SharePoint 站点备份(Backup-SPSite)的时候,速度特别慢,然后网站变成只读状态(备份过程中只读属于正常现象).但是,自己手欠把备份命令的Powe ...
- XVFB实现selenium在linux上无界面运行安装篇
selenium在linux上无界面运行,其实是非常简单的.具体的方法有使用HtmlUnitDriver或者PhantomJSDriver,有时间我会写写关于这两个东东的文章,其实基本和ChromeD ...
- 都铎王朝第一至四季/全集The Tudors迅雷下载
都铎王朝 第一.二.三.四季 The Tudors Season (2007-2010) 本季看点:本剧讲述了年轻的亨利八世对英国的统治以及他的婚姻生活,带有传奇色彩.Showtime电视台的古装热门 ...
- .NetCore中EFCore for MySql整理
一.MySql官方提供了Ef Core对MySql的支持,但现在还处于预览版 Install-Package MySql.Data.EntityFrameworkCore -Pre Install-P ...
- Java中线程池,你真的会用吗?
在<深入源码分析Java线程池的实现原理>这篇文章中,我们介绍过了Java中线程池的常见用法以及基本原理. 在文中有这样一段描述: 可以通过Executors静态工厂构建线程池,但一般不建 ...