java ui自动化测试脚本,如何用Airtest编写UI自动化脚本(示例代码)
前言
游戲并不像app一樣直接把渲染樹節點暴露出來,這就造成游戲UI自動化在元素定位上的不方便性,不過依賴airtest的圖片識別,我們可以直接跳過元素檢查,以圖片對比的形式進行自動化,雖然效率可能會低一些,但是至少也是自動化了。
腳本文件的創建
首先需要創建腳本文件,airtest提供了兩種格式的文件——.air后綴和.py后綴;
雖說分開了兩種,但兩者之前其實差別不是很大(源碼中.air文件最終也是較換成.py文件執行),具體選擇哪個看個人喜好,個人比較喜歡純python文件,因此創建的為.py后綴的文件
設置文件保存的路徑及文件名
設定好之后直接點擊下方的ok按鈕,airtest即會自動生成如下的python文件
設備的連接
設備的連接這里就不細講了,直接用connect連接便可,若發現連接失敗,嘗試點擊connect右側的下拉框選擇use javacap或者其它
腳本的編寫
airtest由于其傻瓜式設計,讓腳本的編寫變得非常簡單,基本上只要了解python的while/for循環、等待,就可以應對大多數的腳本編寫
以騰訊動漫舉個例子,為其設定一個自動化需求為:
1.打開app
2.登錄
3.跳轉到QQ授權界面取消授權
4.再登錄
5.跳轉到QQ授權界面確定授權
6.登錄成功
7.搜索漫畫“尸兄”
8.退出登錄
9.不停重復登錄到退出之間的操作以確定是否有問題
當然,app的自動化目前主流是appium,不過airtest的純UI識別也是可以做app的自動化,因此在此用更為方便的app,而不是游戲
我們首先進行需求分析,“不停重復登錄到退出之間的操作”說明我們需要使用的是while循環,而前面的流程我們只需要按順序寫好就行了
打開app(最好是用package名去打開,這里因為懶得去翻騰訊動漫的包名,便直接以ui識別的形式打開):
打開我們只需要點擊一次app即可,因此
先點擊左側的touch按鈕,點擊后會出現截圖的效果,直接移動到騰訊動漫的圖標上,把動漫的圖標截圖下來,airtest會自動在.py文件上生成touch代碼
由于打開app需要等待一段時間讓app初始化一下,大概5秒,我們但要引入python的等待time.sleep(5):
跳轉到登錄頁簽:
再將while True寫上:
我們手動將app打開,再對后續的步驟每一步用airtest截好對應的操作圖:
“點我登錄”
跳轉到登錄方式后,我們要點擊QQ登錄
后續的都是這樣一步一步截圖即可,這里就暫略了
腳本的執行
腳本的執行只需要點擊上方對應的三角按鈕即可
LOG
對于不太懂python的人來說,log查看窗打印的東西可能看不懂,因此有參考價值的只有報錯時間(哪一步的報錯會直接在代碼出置紅顯示)
總結
以上是生活随笔為你收集整理的java ui自动化测试脚本,如何用Airtest编写UI自动化脚本(示例代码)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: PHP在浏览器中被拒绝请求,php控制请
- 下一篇: 平衡杆多少钱啊?