python编写自动化测试脚本过程中,往往需要用到等待过程,下面介绍下使用较多的等待方式
一、强制等待
sleep()
设置固定等待时间
二、隐形等待
implicitly_wait(),等待页面所有元素加载完成
三、显性等待
WebDriverWait(),等待页面某个元素加载完成
由webdriver提供的等待方法。在设置时间内,默认每隔一段时间检测一次当前页面元素是否存在,如果超过设置时间检测不到则抛出异常。格式如下:
WebDriverWait(self,driver,timeout,poll_frequency=POLL_FREQUENCY,ignored_exceptions=None)
参数:
-
- driver: webdriver的驱动程序
- timeout: 设置超时时间,默认以秒为单位
- poll_frequency: 休眠时间(步长)的间隔,默认为0.5秒
- ignored_exceptions: 超时后的异常信息,默认情况下抛 “NoSuchElementException".
until()
WebDriverWait()一般由until或until_not配合使用
until(method,message=’ ’) 调用该方法提供的驱动程序做为一个参数,直到返回值为True
expected_conditions提供一些预期条件的实现