airtest是最近很火的移動端自動化項目。盡管在iOS和分布式方面仍需要完善,但是瑕不掩瑜。良好的學習曲線,可以讓更多新手完成從零到一的成長(多種意義上,例如移動自動化基礎/Python基礎/編程思想等)
本文旨在於,利用一個簡單的事例展現airtest項目在“快速實現”上的能力。
現在市面上,有不少完成任務送金幣(money)的app。看個視頻/簡訊給到的金幣,集齊一定數量就可以進行支付寶提現。家里的對象為此下載了一籮筐的該類APP,天天樂此不疲。都不和我玩啦o(╥﹏╥)o。所以准備用airtest完成自動薅羊毛腳本

首先進行環境准備:
0、一台安卓手機 and 數據線
1、一台PC設備
2、下載airtest壓縮包並解壓
實現思路0.1:抖音/快手極速版,腳本
打開APP
檢查打開成功
進行頁面滑動
到達金幣上限換下一個APP
話不多說,碼起來

將“打開APP”動作封裝成一個方法,在
打開APP
切換抖音/快手/其他APP
遇到異常情況需要重啟
的時候方便進行調用,接收一個參數‘pack’即APP包名。這個方法的邏輯有:
喚醒屏幕wake()方法
我的華為手機,連接有時候出現“連接設備的”彈框。這里用一個try來嘗試點擊取消按鈕即可
真正打開APP之前,考慮一下會有一種特別情況-目標APP調到某個頁面並且掛在后台沒有關閉。這樣啟動之后,我的操作就“瞎”了。所以先嘗試stop()關閉掉后台可能掛起的目標(App)
使用start()啟動App

經過一番觀察。發現抖音快手的金幣基本在使用兩小時后,就刷不動啦。所以就覺得用操作時間來控制觀看視頻,方法接收一個參數loop-本次觀看視頻的時間(單位是秒)

想要本文代碼的,可以加布爾老師微信領取
另外,經過一番調試。發現了,在進行了長時間刷視頻后。有一定幾率,它就刷不出來新視頻了 ̄へ ̄。好吧,那我這人(腳本)就喜歡看倆新視頻就往回翻行不。所以增加了隨機上下滑動的邏輯
具體解析:
down_sig記錄當前位置進行過幾次下滑(看新視頻),隨機上滑(回翻)輪空就刷不到金幣了
Starttime/endtime為了實現定時功能,對起始/截止時間進行初始化while循環以運行時間<loop設計持續時間為條件
內部邏輯根據下滑標識,和下滑幾率進行滑動操作
1、下滑/新視頻不足10個,必然進行上滑來看新視頻
2、新視頻大於10個,那么random.randint(1,3)即隨機1-3數字。結 合==1,即1/3的幾率進行上滑
3、每個while循環后更新endtime時間,即運行時間增加
最后階段,對運行任務進行配置

大功告成,每天晚上把手機掛上腳本。早晨起來就刷到上限,開心


作 者: Testfan 布爾
出 處:微信公眾號:自動化軟件測試平台
版權說明:歡迎轉載,但必須注明出處,並在文章頁面明顯位置給出文章鏈接