一個編程大白,我在學自動化UI測試工具airtest。
- 一、硬件軟件的準備與連接
- 二、學習AirtestIDE官方文檔
- 三故黑、用Airtest對多臺手機操控
- 四儿咱、純python代碼操控手機
學習AirtestIDE官方文檔
AirtestIDE文檔:http://airtest.netease.com/docs/cn/7_settings.html#
文檔共有9章,前2章已在V1幾篇文章已學習了场晶,重點是AirtestIDE連接手機混埠。
第3章:腳本編寫
此章重點學習:AirtestIDE中腳本初始化
一、 AirtestIDE中新建.air后綴文件初始化:
當新建一個.air后綴的文件時诗轻,腳本編譯器自動建立以下代碼:
如此扳炬,可以理解文檔中的提到的吏颖,
在AirtestIDE中新建的腳本,后綴都為 .air 恨樟,但實際上我們在運行的時候半醉, 運行的是.air目錄下的同名.py文件 。
也就是說劝术,最終運行的還是python普通腳本缩多,需在文件頭import相應的庫來初始化代碼:
# -*- encoding=utf8 -*-
__author__ = "user"
from airtest.core.api import *
# 從api中import接口后,就能直接使用airtest的各個接口了
auto_setup(__file__) # 自動初始化設備
二养晋、 AirtestIDE新建.py后綴文件初始化:
新建時衬吆,如下圖的配置腳本內(nèi)容:
PS:在Devices選項中有2項,初始化建議選:稍后手工趕寫绳泉,這樣后續(xù)可以在代碼中操作多臺設備連接逊抡。
里面的配置項有:
- Save Path: 文件保存路徑,必填項零酪,選擇好路徑后才能繼續(xù)配置其他選項
- Log Directory: 腳本運行時的log保存路徑秦忿,默認為.py文件所在目錄下的 log/ 目錄
- Devices: 可以選擇自動使用當前已連接的手機設備對devices參數(shù)進行初始化,也可以以后再填寫
- Project Root: 項目的父目錄蛾娶,方便未來使用 using 語句引入同一父目錄的其他子文件夾
設置完后灯谣,初始化代碼為:
而在硬盤中保存位置,只有一個.py后綴的文件
在AirtestIDE中py腳本蛔琅,初始化代碼為:
from airtest.core.api import *
from airtest.cli.parser import cli_setup
if not cli_setup():
auto_setup(__file__, logdir=True, devices=[
"Android:///?cap_method=javacap&ori_method=adbori",
])
這也說明了胎许,AirtestIDE中python是使用2個第三方庫(airtest與poco)來實現(xiàn)相關功能的。
三、脫離AirtestIDE用其它代碼編輯器辜窑,使用Airtest與poco兩個第三方庫钩述,操作設備。
若要脫離AirtestIDE環(huán)境穆碎,則需要考慮的是:
v如何管理python與airtest牙勘、poco的版本?
因為所禀,當大白在學python時方面,會安裝有python2.7,python3.7色徘;以及其的第三方庫恭金。當編譯成一個軟件時,所有的東西一齊編譯了褂策,不但是軟件體積大横腿,還會出現(xiàn)其它不可預測的問題。
現(xiàn)用官方推薦的版本管理器:pipenv斤寂,使得程序只包含其需要的庫及文件耿焊。
pipenv版本管理器使用步驟:
第1步:先安裝pipenv包
pip3 install pipenv
第2步:硬盤中建立程序根目錄: eg: Airtest pipenv
第4步:根目錄中啟動pipenv
在Airtest pipenv文件夾中,shift + 鼠標右鍵遍搞,打開命令行窗口CMD搀别。
-
相測此文件夾是否已啟動pipenv :
pipenv --venv
如下提示則表示沒有啟動。
2.創(chuàng)建一個虛擬環(huán)境:
pipenv --python 3.7
創(chuàng)建完后歇父,根目錄內(nèi)多了一個pipfile文件:
其內(nèi)容為如下,可以了解到是記錄程序的虛擬環(huán)境用到的包與庫的相應版本再愈。
[[source]]
name = "pypi"
url = "https://pypi.tuna.tsinghua.edu.cn/simple" #改此為清華的pypi源
verify_ssl = true
[dev-packages]
[packages]
[requires]
python_version = "3.7"
PS: pipfile中默認的pypi源是python官方的榜苫,安裝庫時,下載好慢翎冲,可能將url源改為清華的
第4步:根目錄激活pipenv
pipenv shell
第5步:pipenv shell中安裝需要用到的包與庫
pipenv install airtest
pipenv install poco
安裝完后垂睬,根目錄下會多了個文件: pipfile.lock
pipfile與pipfile.lock兩個文件記錄了此程序的第三方依賴包,區(qū)別是:
pipfile中安裝的包抗悍,不包含包的具體版本號
pipfile.lock是包含 包的具體的版本號
當另外人驹饺,需要用到此程序時,只需要COPY此2個文件缴渊,在pipenv shell 中用命令: 就可以安裝全部的包了赏壹。
pipenv install
第6步:使用虛擬環(huán)境為進行開發(fā)
創(chuàng)建好虛擬環(huán)境后,就可以直接在此根目錄下建立py文件衔沼,用第三方編輯器打開蝌借,直接如py后綴代碼初始化代碼編碼了昔瞧。
PS : 各庫的API文檔
Airtest的API文檔:https://airtest.readthedocs.io/zh_CN/latest/