初步試水,寫python腳本,已經實現了單機的自動化腳本case,目前阻礙“無法雙機聯調,驗證通信”。
工作之余實踐了2個月,遇到的問題隨手記下來了,方便查閱。
前述:
Airtest:主要是用來獲取頁面上的元素信息的,在Airtest里調腳本也是可以的,但不夠規范。
Pycharm:用來寫腳本的工具,相對比較方便
流程:
一、安裝AirTest:
下載版本號:AirtestIDE_2018-10-11_py3_Mac10-12.dmg
2、 賬號:GitHub賬號/密碼:XXXXX / XXXX(自己注冊的測試賬號)
3、直接下載adb工具包即可建立連接:platform-tools_r29.0.1-darwin.zip
二、Airtest與android手機建立連接:
1、連上安卓手機
2、終端,確定adb devices是否能建立連接
3、點開目標APP,前端頁面即為獲取元素頁面
4、試水Airtest上的touch()功能
5、簡單demo
三、第一個demo遇到對問題:
1、如何與手機(安卓)建立聯系
adb devices
打開開發者權限
2、獲取app包名字:
https://www.cnblogs.com/dzblog/p/4062288.html
adb shell pm list packsge
3、渲染樹出不來?
選中Android的poco模式,或者重新啟動下AirtestIDE
4、AirtestIDE提示Connection reset by peer?
因為導入的2個庫Unity和Android,會識別最后一個庫
5、如何執行一個airtest寫的python腳本,鏈接上安卓手機那種?
進入當前腳本目錄下:python3目錄下安卓airtest,需要進入文件下:
cd /Library/Frameworks/Python.framework/Versions/3.7/bin
不是直接
cd /Library/Frameworks/Python.framework/Versions/3.7/bin/python3
6、實現上滑動
poco.swipe([0.5,0.9],[0.5,0.2],duration = 0.2)
7、
點擊空白處:poco.click([0.5,0.5])
8、更換完time.sleep(2)后,每次跑同一個 case,結果都不一樣?經常case被中斷,提示:orientationWatcher has ended
腳本應該是沒問題的,同樣的腳本,同樣的手機,在windows上使用airtest命令是沒問題的。
經過排查,發現只要初始化了poco就會引發此問題,不使用poco,命令可以正常結束。
四、PyCharm使用遇到對問題
1、漢化PyCharm編輯器。
在Mac-應用程序中-顯示包內容-替換lib/resources_zh_CN_PyCharm_2018.3_r1.jar
2、新建文件名是紅色、綠色含義:
灰色:是已經同步的文件
紅色:是本地存在但是沒有同步到倉庫的文件。當添加到倉庫時,此文件名變綠
藍色:表示文件有更改且未同步到倉庫中。
3、pycharm導入代碼,解決python的版本不對應的關系
4、解決pycharm不支持airtest的代碼?
pycharm中添加第三方包,主要是airtest,pocoui
5、pycharm快捷鍵
縮緊和后退(左移)
代碼選中:按住Tab鍵
shift+Tab