下面介紹三大等待:
顯示等待:webdriverwait() 顯示等待,同樣也是 webdirver 提供的方法。在設定時間內,預設每隔一段時間檢測一次當前頁面元素是否存在,如果超過設定時間檢測不到則丟擲異常。預設檢測頻率為0.5s,預設丟擲異常為:nosuchelementexception
例:
from selenium.webdriver.support.ui import webdriverwaitfrom selenium.webdriver.support import expected_conditions as ec
driver.get("")
#設定顯示等待,等待cas登入頁面載入出來,記住presence_of_element_located只能傳參2個,所以第二個引數傳元組(by.id,"loginwrap")
傳引數wait=webdriverwait(driver,20,0.5)
wait.until(ec.presence_of_element_located((by.id,"loginwrap")))
隱式等待:implicitly_wait()比sleep()更加智慧型,可以在乙個時間範圍內等待,相當於乙個全域性變數,只需設定一次,載入各個元素以及頁面就會智慧型等待n秒
例:def setup(self):
self.driver = webdriver.chrome()強制等待:sleep(), 設定固定休眠時間多少秒,python中,匯入包:import time,即可使用,例:sleep(5)self.driver.get("")
self.driver.implicitly_wait(10)
self.driver.maximize_window()
self.driver.maximize_window()
APP自動化之三大等待(四)
硬性等待 thread.sleep long millis 例項 thread.sleep 1000 1秒 優點 使用簡單 缺點 容易造成時間浪費 隱式等待 在設定的超時時間範圍內不斷查詢元素,直到找到元素或者超時 如 設定等待時間為5秒,在第3秒找到元素,不再繼續等待 設定方式 driver.ma...
UI自動化測試 4 三種等待方式
為了解決網路延遲等導致的載入元素 時間不一致.執行的速度像火箭,頁面操作慢的像蝸牛,為了等下蝸牛必須等會 以達到同步.當找不到元素的時候,會等待一段時間,超過了就報 exception driver.implicitly wait 10 在setup 設定 達到全域性等待的效果.webdriver ...
UI 自動化設計思路
近來負責測試的產品,頁面上全都是圖表資料,頁面上互動少,可以說沒有。正對這樣的產品自動化,做了一些自動化方面思路整理 自動化測試用例編寫守則 首先,我們要確定一點,就是自動化的目的和作用。自動化測試是為了代替人執行需要大量重複的規律性或 無規律 的工作,它的主要目的在於驗證問題而不是發現問題 所以我...