一踱承、monkey命令
monkey所有命令
monkey常用命令.png
二、monkey常用命令參數(shù)說明
基本參數(shù) | 說明 |
---|---|
-p <allowed-package-name> | 指定一個或多個包 |
-s <seed> | 指定一個隨機(jī)數(shù)生成器的seed值 |
--throttle <milliseconds> | 指定事件之間的固定延遲(ms) |
-v | 指定反饋信息級別(信息級別就是日志的詳細(xì)程度) |
-c <main-category> | 指定一個或多個類別名 |
-f <scriptfile> | 運行指定的monkey腳本 |
事件參數(shù) | 說明 |
---|---|
--pct-touch <percent> | 指定觸摸事件百分比 |
--pct-motion <percent> | 指定動作事件百分比 |
--pct-trackball <percent> | 指定軌跡事件百分比 |
--pct-syskeys <percent> | 指定系統(tǒng)按鍵事件百分比 |
--pct-nav <percent> | 指定基本導(dǎo)航事件百分比 |
--pct-majornav <percent> | 指定主要導(dǎo)航事件百分比 |
--pct-appswitch <percent> | 指定應(yīng)用啟動事件百分比 |
--pct-flip <percent> | 指定flip(彈)事件的百分比 |
--pct-anyevent <percent> | 指定其他類型事件百分比 |
--pct-pinchzoom <percent> | 指定縮放(捏)事件百分比 |
--pct-permission <percent> | 指定 |
調(diào)試參數(shù) | 說明 |
---|---|
--ignore-crashes | 忽略因崩潰或異常引起的停止運行 |
--ignore-timeouts | 忽略應(yīng)用發(fā)生超時錯誤(ANR) |
--ignore-security-exceptions | 忽略應(yīng)用發(fā)生任何權(quán)限錯誤 |
--monitor-native-crashes | 監(jiān)視并報告monkey運行時native code的崩潰事件 |
--ignore-native-crashes | 忽略因native code的崩潰事件 |
--kill-process-after-error | 在應(yīng)用出錯后通知系統(tǒng)殺死發(fā)生錯誤的進(jìn)程 |
--hprof | 在事件序列前后立即生成profilfing report |
--dbg-no-events | 監(jiān)視應(yīng)用程序所調(diào)用的包之間的轉(zhuǎn)換 |
--wait-dbg | 暫停執(zhí)行中的monkey燕垃,直到有調(diào)試器與它連接 |
三衫画、對小米商城APP跑monkey及其說明
adb shell monkey -p com.xiaomi.sc -v -v -v --throttle 200 -s 1 --ignore-crashes --ignore-timeouts --ignore-native-crashes --pct-touch 30 100000 2>/Users/admin/Desktop/error.txt 1>/Users/admin/Desktop/info.txt
對上面命令的描述.png
adb shell monkey -p com.xiaomi.sc -s 2333 --pct-touch 70 --pct-motion 30 --ignore-crashes --ignore-timeouts --monitor-native-crashes --throttle 200 -v -v 500000 >/Users/admin/Desktop/monkey0903.txt
--pct-touch 70 --pct-motion 30
這兩個命令是后面增加的,一個代表點擊萍肆,一個代表滑動,兩個加起來是100胀屿,代表不會進(jìn)行其他事件操作塘揣,如軌跡事件,導(dǎo)航事件等等宿崭,指定這兩種操作后亲铡,就極大的降低了monkey點到被測app外面的概率(觸發(fā)到音量鍵等系統(tǒng)按鍵)
在執(zhí)行向下滑動的命令時,打開了通知欄劳曹,然后又開始了瞎點的操作奴愉。這時可在執(zhí)行monkey命令之前琅摩,先執(zhí)行禁用通知欄的命令
adb shell settings put global policy_control immersive.full=*
解禁命令:adb shell settings put global policy_control null