手機(jī)自動(dòng)化測(cè)試IDE-----Airtest實(shí)戰(zhàn)篇
點(diǎn)擊上方“IT共享之家”,進(jìn)行關(guān)注
回復(fù)“資料”可獲贈(zèng)Python學(xué)習(xí)福利
大家好,我是IT共享者,人稱皮皮。上篇文章我們介紹了
手機(jī)自動(dòng)化測(cè)試IDE ----- 手把手教你用Airtest模擬器來(lái)連接手機(jī),這篇我們來(lái)講講Airtest實(shí)際操作方法,一起來(lái)看看吧。
前言
前面我們講到了Airtest的基礎(chǔ)知識(shí),手機(jī)自動(dòng)化測(cè)試IDE-----Airtest基本操作方法,手機(jī)自動(dòng)化測(cè)試IDE ----- Airtest的安裝和IDE控件詳解,今天我們就來(lái)說(shuō)說(shuō)Airtest的具體操作方法吧,讓我們輕松實(shí)現(xiàn)軟件自動(dòng)化,真正解放我們的雙手吧。
基本操作
我們就是用我們說(shuō)的跨平臺(tái)API模塊中的方法來(lái)操作我們的APK,下面來(lái)看下吧。我們先點(diǎn)擊Touch,然后框選App所在的區(qū)域,如圖:

這里框選好了后就會(huì)在腳本編輯器中自動(dòng)生成代碼了,如圖:

這里就相當(dāng)于點(diǎn)擊了拼多多這個(gè)App了。當(dāng)然這里只是給大家講了一個(gè)例子,我們真正來(lái)做開(kāi)發(fā)時(shí),可以選擇一些短視頻軟件,比如抖音,微視,快手等下面我們就以抖音為主來(lái)講解下具體操作流程。
1.點(diǎn)擊目標(biāo)APP并等待界面加載完畢
我們要做自動(dòng)點(diǎn)擊肯定不能只是點(diǎn)擊App就完事了啊,還有每個(gè)APP啟動(dòng)后的時(shí)間都不固定,我們肯定得等APP啟動(dòng)完畢之后我們才可以進(jìn)行下一步操作,那么這樣怎樣做呢?我們以短視頻軟件微視為主,下面請(qǐng)看:

我們先點(diǎn)擊微視,打開(kāi)微視有兩種方法,如下:
1).根據(jù)圖像識(shí)別來(lái)打開(kāi)
上面的這種方法就是根據(jù)圖像識(shí)別來(lái)打開(kāi)的。使用這種方法你要打開(kāi)的APP必須在當(dāng)前頁(yè),不可在其它頁(yè),否則搜索不到。
2).根據(jù)包名打開(kāi)
這里我們首先需要獲取到所有的包名,然后找到微視的包名,如下;
dev=device() # 先獲取到當(dāng)前設(shè)備對(duì)象,即是Android對(duì)象print(dev.list_app()) # 平臺(tái)接口列表start_app('com.tencent.weishi')#利用包名打開(kāi)微視

喜歡哪種方法就用哪種方法。建議用第一種,因?yàn)橛袝r(shí)候包名太多不好找。
2.點(diǎn)贊評(píng)論關(guān)閉
由于剛剛微視崩潰了,所以這里采用抖音短視頻,這里我們需要將需要打開(kāi)的APP的圖像截取下來(lái),先等到它在這篇區(qū)域出現(xiàn)然后點(diǎn)擊才能進(jìn)行其它操作 ,如下:

然后就是輸入評(píng)論,輸完后關(guān)閉評(píng)論,最后退出。

這樣我們就實(shí)現(xiàn)了打開(kāi)抖音視頻并且給視頻點(diǎn)贊和評(píng)論,然后關(guān)閉抖音回到桌面。這里有個(gè)小技巧分享給大家,就是大家在點(diǎn)擊某一個(gè)區(qū)域的圖像時(shí)記得先Wait一下哦,因?yàn)槿绻鸚ait的話如果你直接點(diǎn)擊的話就會(huì)報(bào)錯(cuò)了。
3.截屏加滑動(dòng)屏幕
如果想要捕捉操作截圖的話,可以使用Snapshot進(jìn)行截圖,記得指定絕對(duì)地址哦。如下:
snapshot(filename=r'C:\Users\Administrator\Desktop\test.jpg',msg='截圖成功')
成功截圖了;然后我們給它添加個(gè)滑動(dòng)視頻的動(dòng)作,因?yàn)槲覀儾恢牢覀兪髽?biāo)此時(shí)所處的位置的坐標(biāo)的值是多少,所以我們需要開(kāi)啟Airtest中的一項(xiàng)重要功能----實(shí)時(shí)坐標(biāo)顯示。設(shè)置方法如下圖所示:

第二個(gè)代碼補(bǔ)全對(duì)于電腦配置好的可以開(kāi)啟,電腦配置太差不建議開(kāi)啟。

可看到鼠標(biāo)的坐標(biāo)了。然后我們需要使用Swipe的幫助,有了它我們可以進(jìn)行滑動(dòng)屏幕的操作了,如下:

這行代碼是我通過(guò)截取視頻中兩個(gè)地方的圖像然后才得到的方法參數(shù),這里是向量位移的操作。我們可以看到我們進(jìn)行了這么多操作,但是都是一些圖片,而且圖片有的大有的小,看著不美觀,我們其實(shí)可以將這些圖片轉(zhuǎn)換為代碼,如下:

只需選中圖片代碼模式切換即可,我們所截取的圖片都在這個(gè)文件里,大家可以去看看就知道了。其實(shí)這個(gè)就是PY文件里的內(nèi)容。
4.不斷滑動(dòng)屏幕
那么重點(diǎn)來(lái)了,我們?cè)撊绾螌⑺貜?fù)一直滑動(dòng)了,很簡(jiǎn)單,死循環(huán),順便給它加個(gè)隨機(jī)延時(shí)。
import randomwait(Template(r"tpl1594203055954.png", record_pos=(0.356, 0.562), resolution=(1080, 2340)))sleep(1)touch(Template(r"tpl1594203066034.png", record_pos=(0.354, 0.564), resolution=(1080, 2340)))sleep(2)exists(Template(r"tpl1594203382253.png", record_pos=(0.415, 0.139), resolution=(1080, 2340)))sleep(2)snapshot(filename=r'C:\Users\Administrator\Desktop\test.jpg',msg='截圖成功')sleep(2)assert_exists(Template(r"tpl1594203920118.png", record_pos=(0.411, 0.33), resolution=(1080, 2340)), "請(qǐng)?zhí)顚憸y(cè)試點(diǎn)")while True:#死循環(huán),不斷滑動(dòng)短視頻aa=random.randint(1,5)swipe((700,1950),(700,300))sleep(aa)
我們也可以在這個(gè)死循環(huán)里加入其它的操作,比如點(diǎn)贊,評(píng)論啥的,上面我都有說(shuō)到,大家可以結(jié)合試試。
總結(jié)
通過(guò)對(duì)Airtest框架的學(xué)習(xí),我們就能輕松做出短視頻的點(diǎn)贊評(píng)論滑動(dòng)以及其它功能,很多互粉的小盆友需要的正是這種神器了。
我是皮皮,如果覺(jué)得文章不錯(cuò),記得三連噢,大家有問(wèn)題也可以點(diǎn)擊下方的圖片,加我好友,交個(gè)朋友也好呀~
看完本文有收獲?請(qǐng)轉(zhuǎn)發(fā)分享給更多的人
IT共享之家
入群請(qǐng)?jiān)谖⑿藕笈_(tái)回復(fù)【入群】
------------------- End -------------------
往期精彩文章推薦:
