selenium2 原理和常用api
来源:互联网 发布:企业邮箱域名是什么 编辑:程序博客网 时间:2024/06/10 20:47
1. webdriver 原理
2. selenium2接口功能
例如:<input type="text" name="passwd" id="passwd-id" />
driver.findElement(By.id("passwd-id"));
driver.findElement(By.name("passwd"));
driver.findElement(By.xpath("//input[@id='passwd-id']"))
2. JS
通过”Keys”这个类,来模拟键盘输入element.sendKeys(" and some", Keys.ARROW_DOWN);打开,前进,后退navigate().to()”和”get()”方法,实现的功能完全一样
以下2个方法:完全依赖于底层的浏览器。
如果两种浏览器的行为不一致,那么代码执行的效果也会不一致
driver.navigate().forward();
driver.navigate().back();cookiesSet<Cookie> allCookies = driver.manage().getCookies();
注: localstorage 只能使用js完成
3. selenium 1与selenium2接口对比
selenium.type(String arg0, String arg1);
arg0为元素定位,arg1为输入的值,
再次type时会清空了输入
WebElement element = driver.findElement(By);
element.sendkeys(arg0);
需要使用element.clear();来清空内容。
下拉选择框Selenium.select(String arg0, String arg1);
arg0为元素定位,arg1为选择的值
找到下拉框元素:
Select select=new Select(driver.findElement(By));
选择对应的选择项:
select.selectByVisibleText(String text);
//通过文本选择
select.selectByValue(String value);
//通过value选择
select.selectByIndex(int index)
//通过序号选择
单选多选框选择:
selenium.check(String locator);
不选:
selenium.check(String locator);
判断是否选择:
Boolean isChecked(String locator);
定位元素:
WebElement element =driver.findElement(By);
点击:Element.click();
清除:Element.clear();
判断是否选择:
Boolean isSelected();
判断是否可选择:Boolean isEnabled();
获取文本内容selenium.getText(String locator);WebElement element =driver.findElement(By);
element.getText();
弹出框Selenium.chooseOkOnNextConfirmation();
Selenium.chooseCancelOnNextConfirmation();
Selenium.getConfirmation();
该方法我使用后没有成功,所以一直很纠结
Alert alert = driver.switchTo().alert();
alert.accept();
//点击OK
alert.dismiss();
//点击cancel
alert.getText();
//获取弹出框文本
2.0很好的处理了弹出框问题。
frame1.0中对frame没有特殊处理跟其他元素一样2.0中需要在frame与defaultContent切换后才能定位,
否则会出现找不到元素的问题
driver.switchTo().defaultContent();
//切换到默认页面内容
driver.switchTo().frame(WebElement frameElement);
//切换到对应的frame中
页面等待selenium.waitForPageToLoad(String arg0);
直接有方法实现页面加载
driver.manage().timeouts().pageLoadTimeout(30,
TimeUnit.SECONDS);
//页面加载等待时间
driver.manage().timeouts().implicitlyWait(30,
TimeUnit.SECONDS);
//定位元素等待时间
driver.manage().timeouts().setScriptTimeout(30,
TimeUnit.SECONDS);
//异步加载等待时间
但是只是在firefox上才能起作用,其他浏览器需要
自己实现对应的方法。
隐藏元素在1.0中直接可以操作,即使该元素的style为”display:none”如果不显示的元素是无法定位的,那就需要触发mouseover之后才能定位。
- selenium2 原理和常用api
- selenium2(WebDriver) API及常用操作
- selenium2.0(WebDriver) API
- selenium2(WebDriver) API
- selenium2(WebDriver) API
- Selenium2 API详解
- selenium2(WebDriver) API
- selenium2(WebDriver) API
- Selenium2 常用方法封装
- python selenium2 常用方法
- Selenium2常用方法封装
- selenium2+python元素选择器API
- java封装selenium2常用方法
- java封装selenium2常用方法
- Selenium2(WebDriver)总结(常用类)
- java封装selenium2常用方法
- 异常和常用API
- 异常和常用Api
- ExecuteScalar 返回值
- docker 运行挂载磁盘
- USACO Your Ride Is Here
- 绘制矩形框 OpenCV
- RGB<—>YUV RGB<—>YCbCr
- selenium2 原理和常用api
- redis Java应用
- 安卓开发工具安装
- hadoop 几个默认counter的含义及收集原理
- j2ee页面跳转方式
- Java中的线程池
- jdk8新特性-亮瞎眼的lambda表达式
- 编译问题
- 整理的一篇zend中的数组操作