1.如何跑多個apk的monkey?java
黑名單:執行除了黑名單中之外的apk;android
白名單:只執行在白名單中的apk。shell
黑名單的設置方法:測試
a.建立一個名稱爲blacklist的txt文檔,在文件中輸入應用程序的包名,如mms應用,則在文件中輸入com.android.mms;spa
若是有多個應用程序不想被執行,則在文件中添加多個包名,注意包名與包名之間均用回車鍵。調試
b.將blacklist.txt的文件導入到手機的/data目錄下,而後在執行monkey測試的時候使用--pkg-blacklist-file參數再加上blacklist文件的存儲路徑,其餘的參數設置則和測試單一apk沒有區別。事件
例子:文檔
monkey --pkg-blacklist-file /data/blacklist.txt -c <options> -s <seed> <限制語句> --throttle <milliseconds> -v 執行次數> d:\blacklist_test.txt //執行黑名單之外的應用(注意pkg前面兩個‘-’)it
白名單的設置方法:io
白名單的設置方法和黑名單的設置方法基本一致,只是在建立txt文檔的時候,文件的命令應爲whitelist。在執行monkey的時候,只執行白名單中的應用。
例子:
monkey --pkg-whitelist-file /data/whitelist.txt -c <options> -s <seed> <限制語句> --throttle <milliseconds> -v 執行次數 > d:\whitelist_test.txt //執行白名單的應用(注意pkg前面兩個‘-’)
附
1、Monkey命令
1. 標準的monkey 命令
[adb shell] monkey [options] < eventcount > , 例如:
adb shell monkey -v 500
產生500次隨機事件,做用在系統中全部activity(其實也不是全部的activity,而是包含 Intent.CATEGORY_LAUNCHER 或Intent.CATEGORY_MONKEY 的activity)。
上面只是一個簡單的例子,實際狀況中一般會有不少的options 選項.
2. 四大類
經常使用選項
事件選項
約束選項
調試選項
具體的命令解釋能夠看這裏:android 壓力測試命令monkey詳解
1).一個簡單的Monkey命令以下:
adb shell monkey -p com.example.xystudy -s 500 -v 10000
2).工做中爲了保證測試數量的完整進行,咱們通常不會在發生錯誤時馬上退出壓力測試。monkey 測試命令以下:
/**
* monkey 做用的包:com.ckt.android.junit
* 產生時間序列的種子值:500
* 忽略程序崩潰、 忽略超時、 監視本地程序崩潰、 詳細信息級別爲2, 產生10000個事件 。
*/
adb shell monkey -p com.xy.android.junit -s 500 --ignore-crashes --ignore-timeouts --monitor-native-crashes -v -v 10000 > E:\monkey_log\java_monkey_log.txt
3).對了,若是monkey事件沒法觸發,或出現這種狀況** SYS_KEYS has no physical keys but with factor 2.0%.
在命令中加入–pct-syskeys 0,以下:
adb shell monkey -p com.android.browser --pct-syskeys 0 -v 500
2、強制中止Monkey測試
adb shell ps | awk '/com\.android\.commands\.monkey/ { system("adb shell kill " $2) }'