1. 启动eclipse或者android studio开发工具,连接测试手机或者开启虚拟机。
2. 找到android SDK的安装路径,
3. 启动windows命令行,CMD,进入SDK所在的文件夹下的platform-tools
4. 在命令行中执行monkey -p com.kangjun.miapp -v 500命令,-p后面跟随被测试的应用程序包名,包名在AndroidManifest.xml文件中取得,-v后的参数为设置点击次数,执行后logcat中会有执行日志被打印,同时设备的屏幕也随着测试动作变化。
测试次数完成后命令行会显示finish状态,期间如果有错误,logcat会打印出异常的日志。
附参考
#monkey --help
monkey [-p ALLOWED_PACKAGE [-p ALLOWED_PACKAGE] ...]
[-c MAIN_CATEGORY [-c MAIN_CATEGORY] ...]
[--ignore-crashes] [--ignore-timeouts]
[--ignore-security-exceptions]
[--monitor-native-crashes] [--ignore-native-crashes]
[--kill-process-after-error] [--hprof]
[--pct-touch PERCENT] [--pct-motion PERCENT]
[--pct-trackball PERCENT] [--pct-syskeys PERCENT]
[--pct-nav PERCENT] [--pct-majornav PERCENT]
[--pct-appswitch PERCENT] [--pct-flip PERCENT]
[--pct-anyevent PERCENT]
[--pkg-blacklist-file PACKAGE_BLACKLIST_FILE]
[--pkg-whitelist-file PACKAGE_WHITELIST_FILE]
[--wait-dbg] [--dbg-no-events]
[--setup scriptfile] [-f scriptfile [-f scriptfile] ...]
[--port port]
[-s SEED] [-v [-v] ...]
[--throttle MILLISEC] [--randomize-throttle]
COUNT
常用参数解释:
-p 后面跟要覆盖测试的包名。可以有多个-p,每个-p后跟一个包名
-s 后面跟整数,相同的seed值表示产生的随机事件流
-v 可以有多个,个数越多,产生的log越详细,eg:2个时,可看到activity加载的时间
--gnore-crashes 应用crash时,不停止monkey执行
--pct* 调整各类事件所占的百分比,不常用
--throttle 后面跟毫秒数,表示每个随机事件中间的时间间隔
COUNT 必选参数,表示运行随机事件的个数
举例:monkey -p com.xx.xx -v --throttle 300 9000
ps
Monkey监控并特殊处理的3个事件:
1、如果指定测试包时,限制测试在指定的包中;
2、如果应用crash或存在未捕获的异常,monkey停止并报告错误;
3、如果应用产生ANR(application not responding)错误,monkey停止并报告错误。
产生ANR的两个条件:
1、线程响应超过5s;
2、HandleMessage回调函数超过10s