Android Monkey的使用
什么是 Monkey
Monkey 是一个 Android 自动化测试小工具。主要用于Android 的压力测试,主要目的就是为了测试 App 是否会Crash。
Monkey 特点
顾名思义,Monkey就是猴子,Monkey测试,就像一只猴子,在电脑面前,乱敲键盘在测试。猴子什么都不懂,只知道乱敲。通过Monkey程序模拟用户触摸屏幕、滑动Trackball、按键等操作来对设备上的程序进行压力测试,检测程序多久的时间会发生异常。
Monkey程序介绍
Monkey 程序是由 Android 系统自带,使用 Java 语言写成。在Android文件系统中的存放路径是:/system/framework/monkey.jar
Monkey.jar程序是由一个名为“monkey”的Shell脚本来启动执行,shell脚本在Android文件系统中的存放路径是:/system/bin/monkey
Monkey 启动方式:在 cmd 命令提示符里面输入命令行来启动 monkey 测试。
Monkey 架构
Monkey 运行在设备或模拟器上面,可以脱离PC运行(普遍做法是将monkey作为一个向待测应用发送随机按键消息的测试工具。验证待测应用在这些随机性的输入面前是否会闪退或者崩溃)
Monkey 命令基本参数
允许启动手机里面所有的 App, 随机操作 1000次
adb shell monkey 1000
基础参数
-p: 允许启动 App 的包名
(1)启动一个包名的应用
QQ 的包名为: com.tencent.mobileqq
adb shell monkey -p com.tencent.mobileqq 1000
随机操作 手机QQ 1000 次
(2)启动指定的多个 App
微信的包名为:com.tencent.mm
adb shell monkey -p com.tencent.mobileqq -p com.tencent.mm 1000
随机操作 手机QQ 和 微信 1000 次
-v: 操作日志记录
命令行的每一个-v将增加反馈信息的级别
-v
:Level 0(缺省值)除 启动提示、测试完成和最终结果之外,提供较少信息-v -v
:Level 1提供较为详细的测试信息,如逐个发送到Activity的事件-v -v -v
:Level 2提供更加详细的设置信息,如测试中被选中的或未被选中的Activity
adb shell monkey -p com.tencent.mobileqq -v -v -v 100
-s:伪随机数生成器的seed值
如果用相同的seed值再次运行monkey,将生成相同的事件序列。
adb shell monkey -s 12345 -v 10
--throttle:插入固定延迟
在事件之间插入固定延迟。通过这个选项可以减缓Monkey的执行速度。如果不指定该选项,Monkey将不会被延迟,事件将尽可能快地被执行。
adb shell monkey --throttle 500 -v 500
随机执行 500 个事件,每个事件之间延迟 500 毫秒被执行。
--help: 列出简单的用法
adb shell monkey -help
事件发送类型
--pct-touch
--pct-motion
--pct-trackball
--pct-nav
--pct-syskeys
--pct-anyevent
调试选项
--hprof
--ignore-crashes
通常,应用发生崩溃或异常时Monkey会停止运行。如果设置此项,Monkey将继续发送事件给系统,直到事件计数完成。
adb shell monkey --ignore-crashes -v 1000
--ignore-timeouts
通常,应用程序发生任何超时错误(如“Application Not responding”对话框)Monkey将停止运行,设置此项,Monkey将继续发送事件给系统,直到事件计数完成。
adb shell monkey --ignore-timeouts -v 1000
--ignore-security-exceptions
通常,当程序发生许可错误(例如启动一些需要许可的Activity)导致的异常时,Monkey将停止运行。设置此项,Monkey将继续发送事件给系统,直到事件计数完成。
adb shell monkey --ignore-security-exceptions -v 1000
--kill-process-after-error
--monitor-native-crashes
版权声明:
作者:Joe.Ye
链接:https://www.appblog.cn/index.php/2023/03/18/usage-of-android-monkey/
来源:APP全栈技术分享
文章版权归作者所有,未经允许请勿转载。
共有 0 条评论