本文寫於2021.6月
airtest框架支持python2、python3支持到3.9
airtestIDE自帶的python3.5
官方推薦使用python3
我個人推薦python3.8,3.9太新可能有兼容問題,3.8就可以用到python3的很多新特性了。
之前都是一直在airtestIDE里運行腳本,如果想脫離IDE運行(比如持續集成),就需要安裝Python環境了。
我個人強烈推薦使用Python虛擬環境,比如conda,可以建立多個Python環境,互不干擾還能快速切換。
點擊《Miniconda安裝教程,並使用PyCharm創建相關項目》了解conda
之前也說過,airtest project包含兩個python框架:airtest和poco,安裝也和其他python第三方包一樣。
安裝Airtest
pip install airtest
如果你下載比較慢,可以試試國內的源
pip install airtest -i https://pypi.tuna.tsinghua.edu.cn/simple
在Mac/Linux系統下,需要手動賦予adb可執行權限,否則在執行腳本時會遇到 Permission denied 的報錯:
# mac系統 > cd {your_python_path}/site-packages/airtest/core/android/static/adb/mac # linux系統 > cd {your_python_path}/site-packages/airtest/core/android/static/adb/linux > chmod +x adb
找不到路徑沒關系,你就運行你的腳本,第一次報錯了,錯誤日志里也能找到路徑。
安裝poco
pip install pocoui
注意包名是pocoui,不是poco!!!
常見問題
一、若運行代碼時,在cv2模塊報ImportError: DLL load failed: 找不到指定模塊
的錯,有幾種解決方案:
-
本問題的根本原因應該是DLL文件的缺失,我們將它們放入了IDE的目錄中,可以直接下載一個最新版本的AirtestIDE,在解壓后的目錄中找到api-ms-win-downlevel-shlwapi-l1-1-0.dll和IEShims.dll兩個DLL文件,將他們復制到C:\Windows\System32目錄,重新運行代碼即可解決
-
如果使用了python3.7,請安裝 Visual C++ redistributable 2015
https://www.microsoft.com/en-us/download/details.aspx?id=48145 -
如果使用的python版本低於3.7,請直接運行:
> pip uninstall opencv-contrib-python # 若以下安裝語句運行失敗,可以嘗試更新pip到最新版本后重試 > install opencv-contrib-python==3.2.0.7
二、若在win.py中import win32api時報DLL load failed,可以嘗試重新安裝pywin32模塊:
pip uninstall pywin32
pip install pywin32==223
三、python3.9如果安裝完畢還不能使用airtest,報錯ImportError: numpy.core.multiarray failed to import
,可以手工將 numpy 版本號降級至1.19.3就能使用了。
pip install -U numpy==1.19.3
使用本地python環境運行
本地python環境搭建完成后,讓我們運行一下看看。現在還不懂運行命令沒關系,先在IDE運行一下你的腳本,在日志區最上會將運行命令打印出來,直接復制這個命令去命令行運行即可
在有些命令行工具中,可能識別有問題,需要把每個參數后面跟的參數用雙引號括起來。
另外IDE里顯示的命令是用的IDE里的文件,用我們本地python環境運行的話可以用命令airtest run
所以如圖的命令最終就是:
airtest run "/Users/szh/my_test/untitled.air" --device "android://127.0.0.1:5037/1830e25?cap_method=JAVACAP&&ori_method=MINICAPORI&&touch_method=MINITOUCH" --log "/your_logfile/"
設置本地Python環境為AirtestIDE運行環境
什么情況下在IDE里使用本地環境?
-
你使用了airtestIDE沒有的第3方包
-
你想用的python、airtest、poco版本與airtestIDE里的版本不一樣
1.首先找到你的python路徑:
Windows:
去環境變量Path里查看
Mac:which python
使用的Conda:conda info -e
會顯示python目錄,該目錄下的bin文件夾里的python或python3就是了
2.之后在airtestIDE里設置python路徑即可,以后你在airtestIDE里運行,用的就都是本地python環境了,如果出現了什么問題,把本地python路徑在設置中清除即可。
上期回顧:AirtestIDE高級功能
---------------------------------------------------------------------------------
關注微信公眾號即可在手機上查閱,並可接收更多測試分享~