Android压力测试工具——Monkey
Android压力测试工具——Monkey
Monkey是运行在模拟器上和真机设备上的一段程序,它会产生用户事件的一系列伪随机流,比如点击、触摸、手势,还有很多系统级别的事件。Monkey通常是用来做应用的压力测试的,通过一种随机且大量重复的方式。
Overview
Monkey是一个命令行工具,可以运行在模拟器或者真实设备上。
它发送用户事件的伪随机流,向目标应用软件发起压力测试。
Monkey包含一些选项,它们主要分为四个基本类型:
基本配置选项:比如要发送的事件总数。
操作限制:比如可以限制测试一个单独的包。
事件类型和频率。
Debug选项。
当Monkey运行的时候,它会生成事件,把它们发给系统。
同时Monkey也会监测系统在测试下的表现,寻找三种情况,Monkey会特殊处理:
1.如果你限定了Monkey在某个或者某些特定的包内,它会注意观察有没有一些企图导航进入其他包的情况,然后block它们。
2.如果你的应用崩溃了或者接收到了一些未处理的异常,Monkey将会停止运行,然后报告错误。
3.如果你的应用产生了ANR(Application Not Responding)的错误,Monkey也会停止,然后报告错误。
根据选择的详细级别不同,在Monkey运行过程中你将会看到报告和产生的随机事件。
Monkey的基本使用
可以通过脚本或命令行工具来运行Monkey,因为Monkey运行在模拟器或设备的环境中,你必须通过该环境的shell来运行Monkey。
比如可以一句话完成:
$ adb shell monkey [options] <event-count>
当不设置任何选项时,Monkey将会以安静模式启动(non-verbose),它将会向设备上安装的所有包发送事件。
一个更典型的用法如下:
$ adb shell monkey -p your.package.name -v 500
它将会启动你的应用,然后发送500个随机事件给它。
Command Options Reference
命令选项如下,为了图省事直接截图了:
一般类:
事件:
限制:
调试:
参考资料:
http://developer.android.com/tools/help/monkey.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· Obsidian + DeepSeek:免费 AI 助力你的知识管理,让你的笔记飞起来!
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了