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

最新文章

  1. MAC安裝CocoaPods
  2. [Android]使用Kotlin开发Android(二)
  3. Force StyleCop to Ignore a File
  4. LL今天心情特别好,因为他去买了一副扑克牌,发现里面居然有2个大王,2个小王(一副牌原本是54张^_^)...他随机从中抽出了5张牌,想测测自己的手气,看看能不能抽到顺子,如果抽到的话,他决定去买体育彩票,嘿嘿!!“红心A,黑桃3,小王,大王,方片5”,“Oh My God!”不是顺子.....LL不高兴了,他想了想,决定大\小 王可以看成任何数字,并且A看作1,J为11,Q为12,K为13。上面
  5. Spark菜鸟学习营Day5 分布式程序开发
  6. VS2010-win32下cocos2dx控制台打印的方法
  7. launchMode 和 onNewIntent 关系 任务栈知识.
  8. Swift 2.2 最基本的多线程
  9. centos7安装nagios步骤
  10. c语言之gdb调试。
  11. Holer实现外网访问本地MySQL数据库
  12. 猴子分桃—Python
  13. python3 练习题(用函数完成登录注册以及购物车的功能)
  14. js中Date与timestamp(时间戳)的相互转换
  15. Shell命令解析
  16. 源码分析之CountDownLatch
  17. haproxy+keepalived实现web集群高可用性[转]
  18. jquery.dragsort.js 实现拖拽过程遇到的问题
  19. 全国Uber优步司机奖励政策 (1月25日-1月31日)
  20. Hibernate3的jar包

热门文章

  1. 详解css中的position属性
  2. php的memcache和memcached扩展区别
  3. 基于HTML5的WebGL结合Box2DJS物理应用
  4. 扩展HT for Web之HTML5表格组件的Renderer和Editor
  5. JS读书心得:《JavaScript框架设计》——第12章 异步处理
  6. JavaScript中的parseInt的进制问题
  7. 解密 JavaScript 中的 this
  8. PHP程序员7小时学会Kotlin系列
  9. Java关键字用法及区别
  10. redis-desktop-manager