appium元素等待

元素等待

在自动化过程中,元素出现受网络环境,设备性能等多种因素影响。因此元素加载的时间可能不一致,从而会导致元素无法定位超时报错,但是实际上元素是正常加载了的,只是出现时间晚一点而已。

强制等待

设置固定的等待时间,使用sleep()方法即可实现

from time import sleep

sleep(5)    #强制等待5秒

隐式等待

隐式等待是针对全部元素设置的等待时间

driver.implicitly_wait(20)

显式等待

显式等待是针对某个元素来设置的等待时间。

方法WebDriverWait格式参数如下:

from selenium.webdriver.support.ui import WebDriverWait

WebDriverWait(driver, timeout, poll_frequency=0.5, ignored_exceptions=None)

driver : WebDriver

timeout : 最长超时时间,默认以秒为单位

poll_frequency : 休眠时间的间隔时间,默认为0.5秒

ignored_exceptions : 超时后的异常信息,默认情况下抛NoSuchElementException异常。

WebDriverWait()一般和until()或until_not()方法配合使用,另外,lambda提供了一个运行时动态创建函数的方法。




©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容