Selenium元素等待
目前大多数Web应用都在使用AJAX技术。浏览器载入一个页面时,是有加载顺序的。页面内的元素可能是在不同的时间载入的,可能会出现打开了网页但元素并未加载出来,这个时候定位不到元素就会抛出异常
强制等待:
无论浏览器是否加载完成,程序都要等待完设置的时间。等待结束后才能执行下一步。
sleep()
显式等待:
明确的要等到某个元素出现,等不到就一直等待。如果超过等待时间仍然检测不到该元素,就抛出异常。
WebDriverWait()
隐式等待:
设定一个最长等待时间,当要查找某个元素时,这个元素没有马上出现,则浏览器会在设定时间内不断刷新页面去寻找需求的元素。如果在规定时间内找到需求元素则执行下一步,否则一直等到时间截至抛出异常。
implicitly_wait()
显示等待和隐式等待区别:
显示等待仅对指定元素生效,隐式等待是对整个WebDriver生命周期内生效
显示等待无需等待页面完全加载就能执行下一步,隐式等待要等待整个页面加载完成才能执行下一步
浙公网安备 33010602011771号