手機APP測試之monkey
Monkey測試是一種為了測試軟體穩定性、健壯性的快速有效的方法,Monkey程式由Android系統自帶,使用Java語言寫成。本此由於公司APP產品所需,用monkey進行穩定性測試,下面將本次使用monkey測試做個小結。
1.Monkey測試的特點
1)測試的物件僅為應用程式包,有一定的侷限性。
2)Monkey測試使用的事件流資料流是隨機的,不能進行自定義。
3)可對MonkeyTest的物件,事件數量,型別(觸控、縮放螢幕、點選、拖移等操作型別),頻率等進行設定。
2.Monkey測試的常用命令
$ adb connect 127.0.0.1:62007 #連結模擬器裝置
$ adb devices #檢視連結裝置
$ adb shell ps #檢視全部在執行中的程序
$ adb shell #進入shell操作命令列
$ cd /system/bin #進入shell 命令列後,擦看bin目錄下的檔案
如下面的一個測試語句:
$adb shell monkey -p com.tal.kaoyan #monkey 測試 :-p :包名
--pct-touch 40 --pct-motion 25 # -pct-touch :指定觸控事件的百分比,此處佔40% --pct -motion指定滑動事件的百分比,此處佔25% ;
--pct-appswitch 10 # -pct-appswitch :指定activity切換事件的百分比,此處佔10%
--pct-rotation 5 # -pct-rotatiion :指定切換橫豎屏事件的百分比,此處佔5%
-s 1666 --throttle 400 #-s 指定產生隨機事件種子值,相同的種子值產生相同的事件序列
--ignore-crashes #忽略崩潰
--ignore-timeouts #忽略超時
-v -v 200 # 日誌級別:二級,200指事件流的數目
3. monkey各引數詳解:
-v:指定列印資訊的詳細級別,一個 -v增加一個級別 , 預設級別為 0
--help:列印幫助資訊
-s:指定產生隨機事件種子值,相同的種子值產生相同的事件序列。如: -s 200
--throttle:每個事件結束後的間隔時間——降低系統的壓力(如不指定,系統會盡快的傳送事件序列)。如:--throttle 100
--pct-touch <percent>:指定觸控事件的百分比,如:--pct-touch 5%
--pct-motion <percent> (滑動事件)
--pct-trackball <percent> (軌跡球事件)
--pct-nav <percent> (導航事件 up/down/left/right)
--pct-majornav <percent> (主要導航事件 back key 、 menu key)
--pct-syskeys <percent> (系統按鍵事件 Home 、Back 、startCall 、 endCall 、 volumeControl)
--pct-appswitch <percent> (activity之間的切換)
--pct-anyevent <percent>(任意事件)
-p:指定有效的package(如不指定,則對系統中所有package有效),一個-p 對應一個有效package, 如:-p com.ckt -p com.ckt.asura;
-c:activity必須至少包含一個指定的category,才能被啟動,否則啟動不了;
--dbg-no-events:初始化啟動的activity,但是不產生任何事件。
--hprof:指定該項後在事件序列傳送前後會立即生成分析報告 —— 一般建議指定該項。
--ignore-crashes:忽略崩潰
--ignore-timeouts:忽略超時
--ignore-security-exceptions:忽略安全異常
--kill-process-after-error:發生錯誤後直接殺掉程序
--monitor-native-crashes:跟蹤本地方法的崩潰問題
--wait-dbg:知道連線了偵錯程式才執行monkey測試。