Appium元素等待

思考

在自动化过程中,元素出现收网络环境,设备性能等多种因素影响,因此元素加载时间可能不一致,从而导致元素无法定位超时报错,但是实际上元素是正常加载了的,只是出现时间晚一点而已,那么如何解决这个问题呢?

元素等待作用

设置元素等待可以更加灵活的制定等待定位元素的时间,从而增加脚本的健壮性,提高执行效率

元素等待类型

强制等待

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

强制等待

隐式等待

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

隐式等待

显示等待

显示等待是针对某个元素来设置等待时间,方法WebDriverWait格式参数如下from selenium.webdriver.support.uiimport WebDriverWait

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

------driver:WebDriver

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

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

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

WebDriverWait()一般和util()或util_not()方法配合使用,另外lambda提供一个运行是动态创建函数的方法


显示等待

你可能感兴趣的:(Appium元素等待)