一、monkey命令
二、monkey常用命令参数说明
基本参数 | 说明 |
---|---|
-p <allowed-package-name> | 指定一个或多个包 |
-s <seed> | 指定一个随机数生成器的seed值 |
--throttle <milliseconds> | 指定事件之间的固定延迟(ms) |
-v | 指定反馈信息级别(信息级别就是日志的详细程度) |
-c <main-category> | 指定一个或多个类别名 |
-f <scriptfile> | 运行指定的monkey脚本 |
事件参数 | 说明 |
---|---|
--pct-touch <percent> | 指定触摸事件百分比 |
--pct-motion <percent> | 指定动作事件百分比 |
--pct-trackball <percent> | 指定轨迹事件百分比 |
--pct-syskeys <percent> | 指定系统按键事件百分比 |
--pct-nav <percent> | 指定基本导航事件百分比 |
--pct-majornav <percent> | 指定主要导航事件百分比 |
--pct-appswitch <percent> | 指定应用启动事件百分比 |
--pct-flip <percent> | 指定flip(弹)事件的百分比 |
--pct-anyevent <percent> | 指定其他类型事件百分比 |
--pct-pinchzoom <percent> | 指定缩放(捏)事件百分比 |
--pct-permission <percent> | 指定 |
调试参数 | 说明 |
---|---|
--ignore-crashes | 忽略因崩溃或异常引起的停止运行 |
--ignore-timeouts | 忽略应用发生超时错误(ANR) |
--ignore-security-exceptions | 忽略应用发生任何权限错误 |
--monitor-native-crashes | 监视并报告monkey运行时native code的崩溃事件 |
--ignore-native-crashes | 忽略因native code的崩溃事件 |
--kill-process-after-error | 在应用出错后通知系统杀死发生错误的进程 |
--hprof | 在事件序列前后立即生成profilfing report |
--dbg-no-events | 监视应用程序所调用的包之间的转换 |
--wait-dbg | 暂停执行中的monkey,直到有调试器与它连接 |
三、对小米商城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
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,代表不会进行其他事件操作,如轨迹事件,导航事件等等,指定这两种操作后,就极大的降低了monkey点到被测app外面的概率(触发到音量键等系统按键)
在执行向下滑动的命令时,打开了通知栏,然后又开始了瞎点的操作。这时可在执行monkey命令之前,先执行禁用通知栏的命令
adb shell settings put global policy_control immersive.full=*
解禁命令:adb shell settings put global policy_control null