使用Airtest專用的編輯器AirtestIDE編寫一個DEMO
1. 簡介
AirtestIDE 是一個跨平台的UI自動化測試編輯器,適用於游戲和App。
- 自動化腳本錄制、一鍵回放、報告查看,輕而易舉實現自動化測試流程
- 支持基於圖像識別的Airtest框架,適用於所有Android/iOS/Windows應用
- 支持基於UI控件搜索的Poco框架,適用於Unity3d,Cocos2d與Android/iOS App等多種平台
- 能夠運行在Windows和MacOS上
- 完全基於python實現,腳本的語言完全跟隨python,調用airtest的api
- 錄制的腳本基本沒有冗余的代碼(可能是我的腳本太簡單,原諒我的無知哈)
2. 腳本做的事情
以下四步循環執行十次
第一步:在桌面點擊電話
第二步:撥打136xxxxxxxx
第三步:因為手機沒有sim卡,彈出提示,點下知道了回到通話記錄界面
第四步:返回home
3. 腳本代碼
# -*- encoding=utf8 -*-
__author__ = "kangpc"
from airtest.core.api import *
from airtest.cli.parser import cli_setup
if not cli_setup():
auto_setup(__file__, logdir=True, devices=[
"android://127.0.0.1:5037/8KE5T20103001133?cap_method=MINICAP_STREAM&&ori_method=MINICAPORI&&touch_method=MINITOUCH",
])
# script content
print("start...")
counter = 1
while(counter<10):
touch(Template(r"tpl1606402338314.png", record_pos=(-0.352, 0.922), resolution=(1079, 2340)))
touch(Template(r"tpl1606402344894.png", record_pos=(-0.203, -0.589), resolution=(1079, 2340)))
touch(Template(r"tpl1606402415335.png", record_pos=(-0.005, 0.965), resolution=(1079, 2340)))
keyevent("BACK")
assert_exists(Template(r"tpl1606403009349.png", record_pos=(0.019, 0.039), resolution=(1079, 2340)), "檢查當前是否在HOME頁")
counter+=1
# generate html report
# from airtest.report.report import simple_report
# simple_report(__file__, logpath=True)
4. 另一個腳本(點擊+輸入手機號)
# -*- encoding=utf8 -*-
__author__ = "kangpc"
from airtest.core.api import *
from airtest.cli.parser import cli_setup
if not cli_setup():
auto_setup(__file__, logdir=True, devices=[
"android://127.0.0.1:5037/8KE5T20103001133?cap_method=MINICAP_STREAM&&ori_method=MINICAPORI&&touch_method=MINITOUCH",
])
# script content
print("start...")
touch(Template(r"tpl1606405873959.png", record_pos=(0.12, 0.306), resolution=(1079, 2340)))
touch(Template(r"tpl1606405887402.png", record_pos=(0.212, 1.028), resolution=(1079, 2340)))
sleep(3)
touch(Template(r"tpl1606405894150.png", record_pos=(0.029, 0.488), resolution=(1079, 2340)))
sleep(3)
touch(Template(r"tpl1606405999074.png", record_pos=(-0.087, -0.436), resolution=(1079, 2340)))
sleep(3)
text('13600000000')
最后,放一個圖感受一下