Airtest IDE 自動化測試7—wait 等待元素出現


前言

Airtest 寫app自動化的時候,頁面上的有些元素並不是固定的顯示的,有的會等待一定時間才會出現。

於是可以用wait方法等待元素出現,再進一步操作

wait 等待元素

wait方法作用,一直間隔interval秒去查找指定的的v對象,直到時間超過timeout后未找到就報TargetNotFoundError錯誤,期間如果每次的間隔查找遇到錯誤就調用inervalfunc方法

wait(v,timeout=TIMEOUT,interval=0.5,intervlfunc=func)

等待設備屏幕上的模板圖片

參數:

v:圖片

timeout:等待匹配的時間間隔,默認為20s

interval:每次匹配的時間間隔,默認0.5秒(單位:秒)

intervalfunc:在每次嘗試查找相應匹配失敗后調用func函數

return:找到圖片則返回(v對象)圖片中心點坐標,否則拋出異常:TargetNotFoundError

 

 wait 等待示例

touch 操作元素會在頁面上查找20秒,大部分情況下20秒是足夠找到元素的,所以一般也不用wait方法。

比如啟用app后,啟動頁會有3秒的廣告(右側啟動app出現的廣告)

 

 不加wait,直接點-我的 按鈕也是可以成功的(備注:本人的聯想G470太慢了,沒成功)

touch 本身也會在頁面上輪詢查找元素,默認20秒找不到,才會報:TargetNotFoundError。

也可以在touch之前,先加上wait等待元素出現

備注:本人電腦實在太慢,加了sleep(20)才不報錯

 

 touch 本身也會在頁面上輪詢查找元素,默認20秒找不到,才會報:TargetNotFoundError。

也可以在touch之前,先加上wait等待元素出現

timeout 等待超時

什么情況下可以用到wait呢?如果頁面元素查找大於20秒的情況,這時候就可以用wait等待元素。

timeout 參數可以設置等待時間,如果是針對單個比較特殊的元素,可能元素出現的時間是不固定的,在頁面上大於20秒,可以通過設置timeout時間來等待久一點;

 

 wait 返回v對象

wait 方法查找到元素,返回 v 對象,也就是圖片的中心點坐標。

前面的touch 方法傳入參數是v對象(或圖片中心點坐標),於是wait和touch 是可以結合起來使用的。

 

 可以先wait返回一個對象

 

 也可以寫成一行,直接touch 傳 wait 返回的對象

intervalfunc 參數

intervalfunc 參數是在每次嘗試查找相應匹配失敗后調用func函數,這對於一個 listview 頁面需查找到指定元素的時候非常方便。

可以寫個滑動頁面的函數,每次找不到就調用一次滑動頁面,直到找到指定元素為止。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM