monkey命令详解
先用adb shell monkey 看看具体用法。
日志分析
正常情况,如果Monkey测试顺利执行完成,在log的最后会打印出当前执行事件的次数和所花费的时间;// Monkey finished 代表执行完成
异常情况:
查阅Monkey的输出日志
1. 程序无响应的问题: 在日志中搜索 “ANR”
2. 崩溃问题:在日志中搜索 “Exception”
3. 如果有空指针,搜索“NullPointerException”
4. 如果Monkey执行中断,在log最后也能看到当前执行次数
1 usage: monkey [-p ALLOWED_PACKAGE [-p ALLOWED_PACKAGE] ...] 2 [-c MAIN_CATEGORY [-c MAIN_CATEGORY] ...] 3 [--ignore-crashes] [--ignore-timeouts] 4 [--ignore-security-exceptions] 5 [--monitor-native-crashes] [--ignore-native-crashes] 6 [--kill-process-after-error] [--hprof] 7 [--pct-touch PERCENT] [--pct-motion PERCENT] 8 [--pct-trackball PERCENT] [--pct-syskeys PERCENT] 9 [--pct-nav PERCENT] [--pct-majornav PERCENT] 10 [--pct-appswitch PERCENT] [--pct-flip PERCENT] 11 [--pct-anyevent PERCENT] [--pct-pinchzoom PERCENT] 12 [--pkg-blacklist-file PACKAGE_BLACKLIST_FILE] 13 [--pkg-whitelist-file PACKAGE_WHITELIST_FILE] 14 [--wait-dbg] [--dbg-no-events] 15 [--setup scriptfile] [-f scriptfile [-f scriptfile] ...] 16 [--port port] 17 [-s SEED] [-v [-v] ...] 18 [--sort-app-list] 19 [--throttle MILLISEC] [--randomize-throttle] 20 [--profile-wait MILLISEC] 21 [--device-sleep-time MILLISEC] 22 [--randomize-script] 23 [--script-log] 24 [--bugreport] 25 [--periodic-bugreport] 26 [--delay-appswitch MILLISEC] 27 [--launch-app-after-launcher 28 [--launch-app-after-app MILLISEC PACKAGE_NAME CLASS_NAME] 29 COUNT 30
-p 允许的包名列表,可同时指定多个包名,每个包都需要使用“-p”参数指定。指定多个包: adb shell monkey -p package_1 –p package_2 100 --ignore-crashes 忽视应用 crash 报错,不指定该参数时,应用出现 crash,monkey 会自动停止发送事件,指定该参数后,monkey 会在 crash 后也一直发送事件,直到所有事件发送完成。 --ignore-timeouts 忽视超时导致的错误,即ANR的错误 -s 用于指定伪随机数生成器的seed值,如果seed相同,则两次Monkey测试所产生的事件序列也相同的,方便用于重现 bug。如: adb shell monkey -p package_name –s 10 100 -v 设定输出信息的详细级别,1个 -v 表示级别为1,2个 -v 表示级别为2 Level 0 : adb shell monkey -p package_name -v 100 // 缺省值,仅提供启动提示、测试完成和最终结果等少量信息 Level 1 : adb shell monkey -p package_name -v -v 100 // 提供较为详细的日志,包括每个发送到Activity的事件信息 Level 2 : adb shell monkey -p package_name -v -v -v 100 // 最详细的日志,包括了测试中选中/未选中的Activity信息 --throttle 设定事件之间的延时,单位为毫秒,如: adb shell monkey -p package_name --throttle 3000 100 延迟3s执行。 ---------------------
浙公网安备 33010602011771号