一、什么是Monkey
Monkey是Android自身提供的,可以通過adb shell模擬用戶行為,發(fā)送一些偽隨機(jī)用戶事件到目標(biāo)設(shè)備上。
Monkey和它的直接意思一樣,可以像一個猴子一樣,瘋狂的輸入各種隨機(jī)事件到設(shè)備上,像是一個猴子在瘋狂的點(diǎn)擊設(shè)備。
既然Monkey有這樣的功能,我們就可以利用它來對Android App做壓力測試,可以在規(guī)定的范圍內(nèi),任意隨機(jī)觸發(fā)各種事件,來驗證App的抗壓性和穩(wěn)定性。這些隨機(jī)事件包括:點(diǎn)擊屏幕、滑動屏幕、各種無力按鍵等。
二、簡單的使用Monkey
Monkey主要是借助adb命令來讓PC與Android設(shè)備連接,adb是一種Android調(diào)試工具,在PC上配置好環(huán)境即可使用。
三、安裝 Android SDK
Android SDK(Software Development Kit,軟件開發(fā)工具包)提供了 Android API 庫和開發(fā)工具構(gòu)建,測試和調(diào)試應(yīng)用程序。簡單來講,Android SDK 可以看做用于開發(fā)和運(yùn)行 Android 應(yīng)用的一個軟件。
1. 下載 Android SDK
Appium的下載安裝及配置
其中有SDK下載的詳情
-
下載好SDK之后,解壓到目錄中。
點(diǎn)擊“SDK Manager.exe”,安裝需要工具后,對應(yīng)的tools等文件夾都出現(xiàn)了。
SDK的環(huán)境配置
計算機(jī) — 屬性 — 高級系統(tǒng)設(shè)置 — 環(huán)境變量
-
系統(tǒng)變量 — 新建”,變量名:“ANDROID_HOME",變量值:輸入SDK的安裝地址。
D:\ProgramFiles(x86)\Android_SDK\android-sdk_r24.4.1-windows\android-sdk-windows
編輯系統(tǒng)環(huán)境變量PATH,在變量值的后面輸入 ;%ANDROID_HOME%\platform-tools;%ANDROID_HOME%\tools
-
檢查SDK的環(huán)境是否已經(jīng)配置完成
cmd — adb
四、使用Monkey
將手機(jī)與電腦建立鏈接,手機(jī)打開開發(fā)者模式,允許USB調(diào)試,手機(jī)安裝apk包。
輸入:adb install apk包路徑,回車aapt 命令可應(yīng)用于查看apk包名、主activity、版本等很多信息。
在D:\ProgramFiles(x86)\Android_SDK\android-sdk_r24.4.1-windows\android-sdk-windows\build-tools\24.0.0目錄下找到aapt.exe,將這個路徑設(shè)置環(huán)境變量,添加到path下。
-
cmd — aapt — 出現(xiàn)下圖的內(nèi)容,證明環(huán)境配置成功。
-
輸入 aapt dump badging apk路徑
- 輸入:
adb devices
adb shell monkey -p com.zhan.toeflword --ignore-security-exceptions --monitor-native-crashes --throttle 1000 -v -v -v -s 1427 180000 >sdcard/Monkey.log
隨筆:
adb shell 連接手機(jī)系統(tǒng)
pm list package 顯示所有包名
exit 退出adb shell
adb shell monkey -p com.yaoke.travel -p(可再加另一個包) -v -v (日志級別) -s 10000 序列號 10000(跳10000次) --trottle 200 (間隔200毫秒)>D:\log.txt(日志寫入這個文檔)
adb shell monkey -p com.yaoke.travel -v -v -s 10000 10000 --trottle 200>D:\log.txt
停止Monkey測試:
kill pid + ID
如何停止Monkey測試
一般的測試結(jié)果分析:
1、 ANR問題:在日志中搜索“ANR”
2、 崩潰問題:在日志中搜索“Exception”




