Appium wait等待的三种方法
1、sleep()方法
Thread.sleep(60000)强制等待60s
2、隐式等待implicitlyWait()
driver.manage().timeouts().implicitlyWait(30,TimeUnit.SECONDS);
全局等待30s不管元素是否已经加载
1) 当使用了隐式等待执行测试的时候,如果WebDriver没有在DOM中找到元素,将继续等待,超出设定时间后则抛出找不到元素的异常
2)换句话说,当查找元素或元素并没有立即出现的时候,隐式等待将等待一段时间再查找DOM,默认的时间是0
3) 一旦设置了隐式等待,则它存在整个WebDriver 对象实例的声明周期中,隐式的等到会让一个正常响应的应用的测试变慢。
4) 它将会在寻找每个元素的时候都进行等待,这样会增加整个测试执行的时间。
implicitly_wait()方法比sleep() 更加智能,后者只能选择一个固定的时间的等待,前者可以在一个时间范围内智能的等待。
3、显示等待WebDriverWait()
WebDriverWait wait = new WebDriverWait(driver, 60);
WebElement e = wait.until(new ExpectedCondition<WebElement>(){
@Override
public WebElement apply(WebDriver d) {
return
d.findElement(By.xpath("//android.widget.RelativeLayout[@index='2']"));
}});
e.click();
WebDriverWait类的构造方法接受了一个WebDriver对象和一个等待最长时间(60秒)。然后调用until方法,其中重写ExpectedCondition接口中的apply方法,让其返回一个WebElement,即加载完成的元素,然后点击。默认情况下,WebDriverWait每500毫秒调用一次ExpectedCondition,直到有成功的返回,当然如果超过设定的值还没有成功的返回,将抛出异常。
转载于:https://www.cnblogs.com/strggle/p/6530403.html
Appium wait等待的三种方法相关推荐
- html手机不能自动播放音乐,解决移动端浏览器 HTML 音频不能自动播放的三种方法...
由于Android,IOS移动端的浏览器以及微信自带的浏览器为了用户更好的体验,规定不自动播放音频视频,默认屏蔽了autoplay,如果要想达到自动播放效果,需要单独处理,方法有以下几种: 第一种:添 ...
- (PASS)JAVA数组去重 三种方法 (不用集合)
第一种方法(只学到数组的看): 定义一个新的数组长度和旧数组的长度一样,存储除去重复数据的旧数组的数据和0, package demo01;import java.sql.Array; import ...
- python调用cmd命令释放端口_详解python调用cmd命令三种方法
目前我使用到的python中执行cmd的方式有三种 使用os.system("cmd") 该方法在调用完shell脚本后,返回一个16位的二进制数,低位为杀死所调用脚本的信号号码, ...
- unix c线程同步的三种方法:互斥量、读写锁以及条件变-xhb8413-ChinaUnix博客
unix c线程同步的三种方法:互斥量.读写锁以及条件变-xhb8413-ChinaUnix博客 unix c线程同步的三种方法:互斥量.读写锁以及条件变 2012-03-30 14:42:38 分类 ...
- Eclipse远程调试Java代码的三种方法
Eclipse远程调试Java代码的三种方法, 第1种方法是用来调试已经启动的Java程序,Eclipse可以随时连接到远程Java程序进行调试, 第2种方法可以调试Java程序启动过程,但是Ecli ...
- t–sql pl–sql_T-SQL for DBA –使用T-SQL进行快速数据分析的三种方法
t–sql pl–sql 背景 (Background) As a database administrator, sometimes you need to identify details abo ...
- Java 创建线程的三种方法比较
在学习编程的过程中,我觉得不止要获得课本的知识,更多的是通过学习技术知识提高解决问题的能力,这样我们才能走在最前方,本文主要讲述Java 创建线程的三种方法比较, 更多Java专业知识,广州疯狂jav ...
- Python selenium —— 一定要会用selenium的等待,三种等待方式解读
发现太多人不会用等待了,博主今天实在是忍不住要给大家讲讲等待的必要性. 很多人在群里问,这个下拉框定位不到.那个弹出框定位不到-各种定位不到,其实大多数情况下就是两种问题:1 有frame,2 没有加 ...
- 什么是android应用程序未安装,Android 解决应用程序未安装的三种方法
<Android 解决应用程序未安装的三种方法>由会员分享,可在线阅读,更多相关<Android 解决应用程序未安装的三种方法(3页珍藏版)>请在人人文库网上搜索. 1.解决安 ...
最新文章
- Java成员变量与类变量_Java基础随记2-成员变量和类变量的区别
- Aix netstat命令解析
- 用反射去构建一个对象吧!
- 现代密码学3.7--CCA安全
- 桌面云计算机的配置,Citrix桌面云实验环境的部署配置
- MySQL数据库解决方案
- 【智能制造】推进智能制造,他山之石可以攻玉!
- Axure RP 8.0 Mac中文破解版链接
- 《数字图像处理》冈萨雷斯版 读书笔记(一)
- c4d怎么导入图片描图建模,c4d怎么导入图片
- 机械设计:如何能看懂复杂机械图纸中的尺寸标注,赶快学起来
- 系统架构改进--多系统用户整合
- 图像质量评估---FID
- 猜拳php代码,微信猜拳游戏源码
- Android 自定义Dialog 里面有EditText控件点击关闭输入法失效的问题
- 车路协同信息交互技术要求第 1 部分:路侧设施与云控平台
- 桌面管理landesk太古案例
- Xgen Animwires 随笔01
- 详解ZStack高级功能--裸金属服务
- 安卓Android Studio Button按钮background不生效无效问题
热门文章
- mysql删除delete语句
- BeanFactory和ApplicationContext有什么区别?
- Navicat远程连接linux下mysql服务器1045错误解决办法在这儿
- Linux常用命令大全(新手入门)
- SQL中Group By的用法整理
- 今年最有档次的9个词!(不看后悔)
- mysql符合安可要求吗,安可是什么意思?演唱太过精彩,粉丝要求返场(再唱一个)...
- html自动滑动轮播代码,html+css+js 实现自动滑动轮播图
- Vs Code:Remote SSH
- 根据图片获得配色方案_配色系列(1)—从图片中获得配色灵感