selenium driver.get(url) 页面加载时间太长
在执行自动化测试用例过程中,发现因为网络慢或其他原因导致driver.get(url) 时,页面一直在加载,页面没有加载完成就不会去继续执行下面的动作,但是实际上需要操作的元素已经加载出来了。
解决方法
第一步:使用 set_script_timeout() 设置等待最大时间。
第二步:到了最大等待时间后页面如果仍然没有加载完成,执行js代码, driver.execute_script("window.stop()") 停止页面加载,执行下面的自动化测试步骤。
代码如下:
-
driver = self.driver
-
# 设置页面最大加载时间
-
driver.set_page_load_timeout(10)
-
try:
-
driver.get(self.base_url)
-
except TimeoutException:
-
print '!!!!!!time out after 10 seconds when loading page!!!!!!'
-
# 当页面加载时间超过设定时间,通过js来stop,即可执行后续动作
-
driver.execute_script("window.stop()")
-

浙公网安备 33010602011771号