Python實現 等待條件成立或超時後返回

2022-06-21 15:48:11 字數 546 閱讀 8161

最近用robotframework 自帶的selenium庫關鍵字進行頁面指令碼編寫測試,發現有很多等待關鍵字,等待條件成立或時間結束後返回,本人之前一直在思考等待命令執行一定時間在接著執行,

認為可以借鑑次**,將此處**複製貼上在部落格上。

def _wait_until_worker(self, condition, timeout, error):

max_time = time.time() + timeout

not_found = none

while time.time() < max_time:

try:

if condition():

return

except elementnotfound as err:

not_found = str(err)

else:

not_found = none

time.sleep(0.2)

raise assertionerror(not_found or error)

python如何實現元素等待

一 為什麼要元素等待?在ui自動化過程中,元素的出現受網路環境 裝置效能等多種元素影響。因此,元素載入和指令碼執行到該元素的時間不一致,會報錯 元素無法定位。簡單舉下例子 實際ui自動化測試中,點選乙個登入控制項需要啟動乙個新activity介面,或需要載入彈框,或請求網路載入資料成功後重新整理頁面...

同步併發操作之等待乙個事件或條件

兩個執行緒需要同步操作時,可以設定乙個全域性變數,用互斥量保護這個全域性變數,通過這個全域性變數來同步。但是這樣太浪費cpu,這時可以用休眠方法。bool flag std mutex m void wait for flag 但是很難確定休眠時間的長短,太長或太短都不合理。在c 庫中,可以使用條件...

python實現類似C C 的條件編譯

python中的乙個內建常量 debug 該常量預設是true,但是在執行python指令碼時加上 o會那麼該變數就為false。利用這個變數可以完成類似c c 的條件編譯。example example.py if name main if not debug print this is a de...