appnium/selenium 的显示等待 (重点)

因为 appnium 内部还是集成的selenium的 代码方法,所以以下的内容为appnium和selenium 通用的

在appnium的三大等待方式中,强制等待和隐式等待都很好理解也容易应用,但关于显示等待就不太易理解

在使用显示等待时,需要导入这个包(app应用的自动化脚本中也是应用这种方法)

from selenium.webdriver.support.ui import  WebDriverWait

导包后调用它提供的WebDriverWait 的方法 这个方法一般与until 和until_not 方法连用
until 这方法的意思是直到找到这个元素才 不返回false 不然一直返回的都是false
它的参数是默认会传入操作驱动的这个对象 就是driver (在一定的时间内隔一段时间找一次,找到就返回这个元素对象,如果在一定时间内该元素还是不存在,就抛异常)
until_not 意思就是 直到 返回值为 False 常常用于查找是不是这样元素已经隐蔽了 隐蔽了就返回false (在一定的时间内隔一段时间找一次,找不到就返回fales, 如果在一定时间内该元素还是存在,就抛异常)
一般和if 连用 判断 if not until_not 的内容为真时,执行

wait = WebDriverWait(driver,10).until(lambda x:x.find_element_by_id("mine"))  # 在这个 匿名函数中 x 就等于 driver
wait.click() 
is_disappeared = WebDriverWait(driver, 30, 1, (ElementNotVisibleException)).
until_not(lambda x: x.find_element_by_id(“someId”).is_displayed())

找到的话则会返回这个元素对象 可以使用这个元素对象来进行你的操作

【其实显示等待也可以用来检测某上传,或下载功能是否已经完成,因为它的原理是,隔几秒就检测一次某元素】

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值