手機自動化測試IDE-----Airtest基本操作方法
點擊上方“IT共享之家”,進行關(guān)注
回復(fù)“資料”可獲贈Python學習福利
大家好,我是IT共享者,人稱皮皮。這篇我們來講講手機自動化測試IDE-----Airtest。
前言
前面我們講到了Airtest的界面和安裝技巧,今天我們就來說說Airtest的具體操作方法吧,讓我們輕松實現(xiàn)軟件自動化,真正解放我們的雙手吧。
一、基本API介紹
我們在做自動化腳本的時候,每個生成的腳本文件會給我們自動生成一些代碼,如圖:

這里所導(dǎo)入的模塊其實就是跨平臺的API,除了跨平臺的API還有平臺特定的API,比如:
airtest.core.android #安卓平臺airtest.core.ios #蘋果平臺airtest.core.win #Windows平臺
這里我們來詳細說說這些模塊。
1.跨平臺API模塊
這里我們要介紹的第一個就是跨平臺模塊:
from airtest.core.api import * #導(dǎo)入所有方法1).初始化設(shè)備
這里初始化設(shè)備我們也有兩種方案,下面請看:
1)).根據(jù)設(shè)備的UUID來初始化
語法格式:
init_device(platform='Android',uuid='',cap_method=JAVACAP for Android)#平臺 – Android,IOS或Windows#uuid –目標設(shè)備的uuid,例如,用于Android的serialno,用于Windows的handle,用于iOS的uuid#kwargs –可選的平臺特定關(guān)鍵字args,例如cap_method = JAVACAP for Android
下面我們來列舉一下實例,如下:
init_device(platform='Android',uuid='127.0.0.1:62001',cap_method='JAVACAP')2)).根據(jù)設(shè)備的URL來初始化
語法格式如下:
android:/// 連接當前安卓設(shè)備android://adbhost:adbport/serial NO.?cap_method=javacap&touch_method=adbwindows:/// 連接本地桌面程序ios:/// 連接IOS設(shè)備
這里我們主要是傳入了ADB地址,端口和連接的夜神模擬器的序列號而連接上的。具體例子如下:
connect_device('android://127.0.0.1:5037/127.0.0.1:62001?cap_method=javacap&touch_method=adb')2).返回當前活動設(shè)備
device()
3).設(shè)置當前活動設(shè)備
有時候如果我們連接了多個設(shè)備,我們需要切換的話,就是用這個函數(shù)來達到目的,可以使用設(shè)備的索引或者設(shè)備的序列號來進行切換哦。
set_current(0)set_current('127.0.0.1:62001')
4).運行環(huán)境配置
auto_setup(basedir = None,devices = None,logdir = None,project_root = None,compress = 0 )basedir 設(shè)置當前腳本的所在位置,__file__也可以。devices 指定運行腳本的設(shè)備以列表形式存在logdir 設(shè)置腳本運行時的日志保存路徑,默認為None,設(shè)為True可保存project_root 設(shè)置api的項目根目錄
5).開啟并執(zhí)行遠程Shell命令
shell(cmd) #ls / data / local / tmp6).在設(shè)備上啟動程序
start_app('啟動的應(yīng)用程序包名')7).在設(shè)備上停止程序
stop_app('啟動的應(yīng)用程序包名')8).清除設(shè)備上的應(yīng)用程序數(shù)據(jù)
clear_app('啟動的應(yīng)用程序包名')9).在設(shè)備上安裝應(yīng)用程序
install(filepath='要在目標設(shè)備上安裝的文件的路徑')10).在設(shè)備上卸載應(yīng)用程序
uninstall('應(yīng)用程序包名')11).截圖并保存到文件中
snapshot(filename='1.jpg',msg='hello',quality=3)filename:圖片名msg:屏幕截圖的簡短描述quality:圖像質(zhì)量,范圍為[1,99]的整數(shù)
12).喚醒并解鎖設(shè)備
wake('設(shè)備')13).返回目標設(shè)備的主屏幕
home('設(shè)備')14).設(shè)備屏幕上執(zhí)行點擊,滑動,捏,按鍵,輸入操作
click(v=Template(x,y),times=2) #單擊v:觸摸目標,可以是Template實例,也可以是絕對坐標(x,y)times:執(zhí)行多少次觸摸double_click() #雙擊swipe(v1,v2)#滑動起點和終點swipe(v1,vector=(x,y))#沿向量移動,向量可以是坐標也可以是屏幕百分比#返回值:原點位置和目標位置pinch()#捏操作,相當于縮放,參數(shù)如下:in_or_out:放大或縮小center:默認為None表示屏幕中心percent:捏動作的屏幕比例,默認值為0.5keyevent(keyname='Home')#按鍵操作text('文本')#在設(shè)備上輸入文本
15).睡眠,等待
sleep(2)#睡眠兩秒,延遲兩秒wait(v,timeout,interval,intervalfunc)#等待與設(shè)備屏幕上的模板匹配v:等待的目標對象timeout:超時時間interval:嘗試找到匹配項的時間間隔(秒)intervalfunc:在每次未成功嘗試找到相應(yīng)匹配項后調(diào)用返回值:匹配目標的坐標
16).檢查給定目標在設(shè)備屏幕上是否存在
exists(v)v:檢查對象如果找不到目標,則為False,否則返回目標的坐標
17).在設(shè)備屏幕上查找所有出現(xiàn)的目標并返回其坐標
find_all(v)v:尋找目標返回坐標列表
18).斷言操作
assert_exists(v,msg) #斷言目標存在于設(shè)備屏幕上assert_not_exists(v,msg) #斷言目標在設(shè)備屏幕上不存在v:要檢查的目標msg:斷言的簡短描述assert_equal(v1,v2,msg) #斷言兩個值相等assert_not_equal(v1,v2,msg) #斷言兩個值不相等v1:第一個值v2:第二個值msg:斷言的簡短描述
這里基本上我們就把使用方法說完了,下面我們來進行下實際操作,下一篇文章即將奉上。
二、總結(jié)
這篇文章主要介紹了Airtest的基本操作方法,可以讓我們輕松實現(xiàn)軟件自動化,下一篇文章將帶大家一起進行實際操作,敬請期待!
我是皮皮,如果覺得文章不錯,記得三連噢,大家有問題也可以點擊下方的圖片,加我好友,交個朋友也好呀~
看完本文有收獲?請轉(zhuǎn)發(fā)分享給更多的人
IT共享之家
入群請在微信后臺回復(fù)【入群】
------------------- End -------------------
往期精彩文章推薦:
評論
圖片
表情
