环境准备:
1. 安装JDK
2. 安装android SDK或者只需要去官网下载platform-tools包解压,配置环境变量即可
3. 环境搭建可参考:
3.准备一台真机 / 使用木木模拟器:
将真机链接到电脑上,在开发者选项中打开USB调试,在弹出窗口中允许计算机USB调试该手机
使用木木模拟器需要进入如下目录,进行主动的设备连接,使用命令:adb connect 127.0.0.1:7555
设备连接成功后,启动要测试的app:
并运行此命令获取包名:adb shell dumpsys window w | findstr \/ | findstr name=
运行一下命令开始测试:adb shell monkey -p com.xueqiu.android --pct-touch 20 --pct-motion 20 --throttle 100 -v -v -v 100000 > D:\snowball.txt
示例如下:
事件类型:
【--pct-touch 20】 表示触摸事件占比20%
【--pct-motion 20】表示移动事件占比20%
【--throttle 100】表示事件时间间隔100ms
【-v -v -v 10000】三个 -v -v -v表示详细程度 10000 表示对apk执行monkey测试的运行次数
参数解析:
- -p 指定要进行monkey测试的包,如果不使用参数,则会随机选择一个应用进行测试
- -c 指定activity的category类别
- -v 指定日志级别 -v level1 -v -v level2 -v -v -v level3
- -s 伪随机的事件seed值,可以通过-s参数复现问题,不指定就会随机生成
调试选项
--ignore-crashes:忽略异常崩溃
--ignore-timeouts:忽略超时ANR
--monitor-native-crashes:跟踪崩溃问题(是否监视并报告native层发送的崩溃代码)
--ignore-native-crashes: 忽略native层代码的崩溃
--ignore-security-exceptions:忽略一些许可错误(忽略安全异常),比如证书许可,网络许可
--kill-procress-after-error: 用于在发送错误后杀死进程
--hprof 设置后,在Monkey事件序列之前和之后立即生产分析报告,保存于data/mic目录,不过将会生成大量几兆文件,谨慎使用
--pct-trackball 设置轨迹球事件百分比,这种事件类型是一个或者多个随机移动,包含点击事件,这里可以是曲线运动,不过现在手机很多不支持,这个参数不常用
--pct-syskeys 设置系统物理按键事件百分比,比如home键,音量键,返回键,拨打电话键,挂电话键等
--pct-nav 设置基本的导航按键事件百分比,比如输入设备上的上下左右四个方向键
--pct-appswitch 设置monkey使用startActivity进行activity跳转事件的百分比,保证界面的覆盖情况
--ptc-anyevent 设置其它事件百分比
--ptc-majornav 设置主导航事件的百分比
————————————————————————————————————————————————————————————————————