前言
在app中點擊一個元素,可以用到touch方法,touch是觸摸事件,手機上用手指觸摸,實際上執行的就是點擊操作了。
touch 介紹
Airtest IDE 中 Airtest 輔助窗查看 touch 語法
touch(v, times=1, duration=0.01, right_ckick=False)
- @param v: 圖片或者坐標(x, y)
- @param times: 點擊次數,默認1次
- @param duration: 按住時間,默認0.01秒
- @param right_ckick: 右鍵點擊(僅限windows模式)
return 有返回值,返回觸摸圖片的中心點坐標,默認20秒查找不到拋異常:TargetNotFoundError
touch 使用
v 參數可以是圖片,也可以是坐標 (x, y)
點下Airtest 輔助窗touch 按鈕,就可以在右側截圖了,可以直接點擊此圖片
運行后在運行日志中可以看到匹配結果 'result': (632, 1225)
match result: {'result': (632, 1225), 'rectangle': [(561, 1173), (561, 1278), (704, 1278), (704, 1173)], 'confidence': 0.9879749417304993}
於是可以知道,此圖片按鈕的坐標是 (632, 1225), 可以用touch 直接點擊坐標位置:touch((632, 1225)) 可以達到同樣的效果。
(一般不推薦點擊坐標,不同手機分辨率不一樣,會導致圖片按鈕坐標發生變化)
times 和 duration
times 參數是觸摸按鈕的次數,需多次點擊的時候,可以設置times次數,默認是點1次
duration 是觸摸按鈕的時間,單位是秒,默認默認0.01秒。如果需要長按按鈕,可以設置 duration 按下按鈕的持續時間。
touch 找不到元素
以下是在首頁查找app啟動圖標的示例
在頁面上找不到元素,如果20秒都沒找到,會拋出異常:TargetNotFoundError