Android測試工具之monkey小結

一.Monkey

1.monkey簡介

這個工具是最簡單的,主要用來做app壓力測試,所謂壓力測試就是亂點以模擬各種各樣奇怪的操作看app能不能抗的住?;蛘呖梢詭椭页鯽pp的一些隱藏極深的bug。非常簡單且作用也非常有限,通常通過跑monkey后打印出來的日志分析來發(fā)現(xiàn)問題。

2.monkey最常用命令

2.1、

$ adb shell monkey -p com.jollycorp.jollychic -v 1000

應用模擬用戶隨機操作,無延遲點擊1000次。

其中參數(shù)-p用來指定參數(shù),指定一個或多個包;參數(shù)-v 設置日志級別(默認一個-v),如需更詳細的日志可以加多個-v,最多3個,如monkey -p? com.jollycorp.jollychic -v -v -v 1000? \\3個-v,輸出最詳細的日志。

2.2、

adb shell monkey -p com.jollycorp.jollychic --throttle 500 100 > F:\monkeylog\monkey.txt

其中參數(shù)--throttle指定隨機事件間的時間間隔,單位是毫秒,一般用500;最終把操作后的日志輸出到電腦上的F:\monkeylog\monkey.txt。
2.3、

Monkey 測試1:adb shell monkey -p com.jollycorp.jollychic -s 10 100

Monkey 測試2:adb shell monkey -p com.jollycorp.jollychic -s 10 100

用于指定偽隨機數(shù)生成器的seed值,如果seed相同,則兩次Monkey測試所產(chǎn)生的事件序列也相同的。如上面的Monkey測試1和2,兩次測試的效果是相同的,因為模擬的用戶操作序列(每次操作按照一定的先后順序所組成的一系列操作,即一個序列)是一樣的。注意:seed值一般設為小于1000。

2.4、

adb shell monkey -p com.jollycorp.jollychic -s 500 --ignore-crashes --ignore-timeouts --monitor-native-crashes -v -v 10000 > F:\monkeylog\monkey_10000.txt

--ignore-crashes忽略崩潰,繼續(xù)測試,若不做此限制,monkey測試出現(xiàn)崩潰時會自動停止測試;

同理,在中間插入控制命令如下:

--ignore-timeouts 忽略連接超時

--ignore-security-exceptions忽略在應用程序發(fā)生許可證錯誤(認證或證書異常),

--kill-process-after-error在應用程序出現(xiàn)錯誤后,將會通知系統(tǒng)停止發(fā)生錯誤的進程

--monitor-native-crashes監(jiān)視并報告Android系統(tǒng)中本地代碼的崩潰事件,如果設置”--kill-process-after-error”參數(shù),系統(tǒng)將停止運行該進程

--ignore-native-carshes忽略本地代碼導致的崩潰

2.5、

adb shell monkey -p com.jollycorp.jollychic -s 500 --throttle 500 --ignore-crashes --ignore-timeouts --monitor-native-crashes -v -v -v 10000 >? F:\monkeylog\monkey_10000.txt

一次可行的monkey測試實例,具體作用供分析研究。

3.monkey日志簡介

3.1、Monkey finished

打開LOG,查看log的最下端,是否有類似以下字段:

## Network stats: elapsed time=5123ms (5123ms mobile, 0ms wifi, 0ms not connected)

// Monkey finished

這個字段表明本次的Monkey沒有異常,測試通過。

3.2、CRASH

同樣,在得到LOG后,搜索”CRASH”字段,如果搜索到有結果,則表明有進程出現(xiàn)問題,測試不通過。

// CRASH: com.onekchi.downloadmanager (pid 12919)

3.3、ANR

在Log中搜素該字段,如果有搜索有結果,則表示測試過程中,測試對象出現(xiàn)了無響應的現(xiàn)象,因此測試不通過。--throttle <毫秒>值建議為500

3.4、無法搜索到上述信息

出現(xiàn)這種情況,一般都是外界原因而非程序本身原因。比如電腦異常測試中斷,需要重新測試。

參考文檔:

http://developer.android.com/intl/zh-cn/tools/help/monkey.html

http://blog.csdn.net/cxq234843654/article/details/47153345

最后編輯于
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容