APP稳定性测试工具-monkey

monkey 是 adb shell 中的一个命令行工具,用于执行随机的用户事件(如触摸、点击、滑动、键盘输入等)来测试应用程序的稳定性。

安装

  1. 下载并安装 Android SDK
  2. 配置环境变量, 将 adb 所在路径添加到系统环境变量中
  3. 验证安装 adb version

使用

1.启动Android设备或模拟器

查看已连接设备adb devices

2.安装待测试的应用

# 安装应用到设备上
adb install /path/to/your_app.apk

# 检查应用是否已安装
adb shell
pm list packages | grep 'com.example.myapplication'

# 使用Monkey工具进行随机测试
adb shell monkey -p com.example.myapplication -v 500
# -p  指定要测试的应用包名
# -v  表示详细输出日志
# 500 表示生成500个随机事件

3.常用选项

# 控制不同事件的比重
adb shell monkey -p com.example.myapplication --pct-touch 50 --pct-motion 30 --pct-syskeys 20 -v 1000
# --pct-touch 50: 表示50%的事件为触摸事件。
# --pct-motion 30: 表示30%的事件为滑动事件。
# --pct-syskeys 20: 表示20%的事件为系统按键事件(如Home键、返回键等)。
# -v 1000: 生成1000个事件。

# 设置事件间延迟
adb shell monkey -p com.example.myapplication --throttle 500 -v 1000
# --throttle 500表示每个事件间隔500毫秒。

# 忽略崩溃
adb shell monkey -p com.example.myapplication --ignore-crashes --ignore-timeouts --ignore-security-exceptions -v 1000
# 忽略崩溃、超时和安全异常,继续生成事件

# 保存日志
adb shell monkey -p com.example.myapplication -v 1000 > monkey.log

# 收集系统日志
adb logcat -d > logcat.log

4.日志分析

  1. 检查异常和崩溃
    在Monkey日志中查找// CRASH:// ANR:(Application Not Responding)
  2. 检查日志中对应的时间
  3. 检查之前发生的事件
  4. 检查内存和性能问题(logcat日志)
  5. 使用分析工具,如 MonkeyLogParser
posted @ 2024-08-29 10:32  rustling  阅读(4)  评论(0编辑  收藏  举报