什么是 Monkey
Monkey 是Android SDK提供的一个命令行工具, 可以简单方便地运行在任何版本的Android模拟器和实体设备上。 Monkey会发送伪随机的用户事件流,适合对app做压力测试。 官方地址:https://developer.android.com/studio/test/monkey
Monkey 使用
- Monkey 命令帮助 adb shell monkey –help
- Monkey 模拟执行某个应用 adb shell monkey -p com.tencent.mm 1000 说明:1000 为随机事件的数
- 参数:-p 指定某个应用,后跟包名
- 参数:-v 指定反馈信息的详情程度,等级越高越详细
- Leve 1: 仅提供启动提示、测试完成和最终结果
adb shell monkey -p com.tencent.mm -v 1000
- Leve 2:包括每个发送到Activity的事件信息
adb shell monkey -p com.tencent.mm -v -v 1000
- Leve 3:包括了测试中选中/未选中的Activity信息
adb shell monkey -p com.tencent.mm -v 1000
- 参数: -s 用于指定伪随机数生成器的seed值,如果seed相同,则两次Monkey测试所产生的事件序列也相同的。可用于复测。
adb shell monkey -p com.tencent.mm -v -s 10 1000
- 参数:–throttle <毫秒> 操作事件的时延
adb shell monkey -p com.tencent.mm --throttle 500 1000
- 参数:–pct-{+事件类别} {+事件类别百分比} 事件类别:touch(触摸) ,motion (动作),trackball(轨迹) ,nav(导航),majornav(导航图形界面) ,syskeys(系统按键),appswitch(启动Activity) ,anyevent (其它类型)
- 其他参数 –ignore-crashes 即使应用程序崩溃,Monkey依然会发送事件,直到事件计数完成。 –ignore-timeouts 使应用程序发生ANR错误,Monkey依然会发送事件,直到事件计数完成。 –ignore-security-exceptions 即使应用程序发生许可错误,Monkey依然会发送事件,直到事件计数完成。 –kill-process-after-error 当应用程序发生错误时,应用程序停止运行并保持在当前状态 –monitor-native-crashes 用于指定是否监视并报告应用程序发生崩溃的本地代码。
- 停止 monkey 运行
adb shell
top | grep monkey
kill -9 [id编号]