Webui自动化—selenium框架之等待、JS弹窗处理

1.智能等待

做自动化时为了保证稳定性,通常会在代码中增加等待时间,但又希望能够兼顾执行效率,所以如果可以,应该尽可能避免使用time.sleep这种死等的方式,selenium提供了两种自带的智能等待方式隐私等待和显示等待

隐式等待

driver.implicitly_wait(10)  #单位是秒

隐式等待可以在指定时间内,不断的查找元素,一旦找到立刻结束查找,继续执行下行代码

比设置了10秒,如果第三秒元素就出现,就不会再等剩下的7秒。

如果查找元素在10秒内都没有找到,会报错:No such element Exception

隐式等待是一个全局性的等待,一旦设置本次执行的所有脚本都生效,并且可以在执行过程中更改,更改只针对未执行的代码生效

但隐式等待仅仅只针对查找元素生效,像点击、输入、切换window等操作都不生效

显示等待

from selenium.webdriver.support import expected_conditions
from selenium.webdriver.support.wait import WebDriverWait


#创建wait对象
wait = WebDriverWait(dr

你可能感兴趣的:(selenium,自动化,selenium)