WebDriver自定义显示等待条件
来源:互联网 发布:一直正在启动windows 编辑:程序博客网 时间:2024/06/04 19:53
测试技术交流群:161204772
悦分享测试联盟:136924235
悦分享主页:http://www.bjhxcc.com/special/2013/0822/yfx.htm
方法一:结合使用WebDriverWait,ExpectedConditions完成,注意,经过我反复测试才发现,这个方法目的是检查某个元素的innerText是否在指定时间范围内出现,我通过修改locator为不存在的情况下,同样会等待30s
WebDriverWait wait = new WebDriverWait(driver,5);//设置等待时间为5s,5s后如还没有出现则抛出异常
if(wait.until(
ExpectedConditions.textToBePresentInElement(
By.cssSelector("a[mon='ct=1&a=1&c=top&pn=0']"), "hello" //hello为此元素的innerText
)
)){
driver.findElement(By.linkText("总政治部副主任吴昌德等6人晋升上将")).click();
}
方法二:结合使用WebDriverWait,ExpectedConditions完成自定义的预期条件,此方法可以定义等待指定元素的超时时间,此方法比较灵活,可以自己定义出自己任何预期的等待条件,以下是我测试过的两个小case
case1:
WebDriverWait wait = new WebDriverWait(driver,5);
WebElement element = wait.until(new ExpectedCondition<WebElement>(){
@Override //覆写apply方法
public WebElement apply(WebDriver driver) {
WebElement element = driver.findElement(By.linkText("总政治部副主任吴昌德等6人晋升上将将"));
return element;
}
});
element.click();
case2:
WebDriverWait wait = new WebDriverWait(driver,5);
boolean flag = wait.until(new ExpectedCondition<Boolean>(){
@Override
public Boolean apply(WebDriver driver) {
Boolean flag = driver.findElement(By.id("userName")).getAttribute("readonly").contains("true");
return flag;
}
});
element.sendkeys("username");
- WebDriver自定义显示等待条件
- selenium-webdriver 使用WebDriverWait显示等待ajax交互
- WebDriver等待事件
- WebDriver设置元素等待
- webdriver-超时与等待
- webdriver中的等待问题
- WebDriver的智能等待
- webdriver 等待方法
- [selenium] selenium+java+TestNG 自定义显示等待
- python selenium 显示等待WebDriverWait与条件判断expected_conditions举例
- selenium webdriver 学习总结-Selenium 控制测试流_补充显示等待(五)
- selenium webdriver 学习总结-Selenium 控制测试流(五)-补充显示等待
- selenium webdriver 学习总结-Selenium 控制测试流_补充显示等待(五)
- 自定义显示加载等待图片插件(loading.git)
- watir-webdriver中的动态等待方法
- Selenium WebDriver等待页面元素加载完成
- WebDriver等待:Explicit and Implicit Waits
- webdriver页面元素等待问题处理方法
- Loading Images Asynchronously using NSInvocationOperation
- 博客网站
- 面试的时候问的关于personal的问题
- .bind .live .on
- 递归读目录,创建目录,级联删除代码实现
- WebDriver自定义显示等待条件
- TIME_WAIT的意义
- [转]bcp命令详解
- Hello Jexus
- MongoDB自学笔记2---1.2初识MongoDB
- The user specified as a definer ('root'@'%') does not exist
- ruby 1环境的开始
- UITableView简单解析
- 三元运算符和GridView数据显示