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

Android压力测试工具——Monkey的更多相关文章

  1. Android 压力测试工具Monkey

    原文地址http://www.syhm52.com/tools/17.html 一.Monkey定义探索软件测试工具有哪些,本文主要介绍Monkey工具.Monkey测试是Android平台自动化测试 ...

  2. android app 压力测试工具-monkey tool

    一.什么是Monkey? Monkey测试是Android自动化测试的一种手段,Monkey测试本身非常简单,就是模拟用户的按键输入,触摸屏输入,手势输入等,看设备多长时间会出异常. Monkey是A ...

  3. Android稳定性测试工具Monkey的使用

    综述    Monkey是一个命令行工具,它可以运行在我们的模拟器或者设备当中.它可以发送一些伪随机的用户事件流,例如点击.触摸.手势等.我们能够使用Monkey工具来对我们所开发的应用进行压力测试. ...

  4. Monkey (压力测试)-移动端手机压力测试工具 monkey以及monkeyrunner

    4. Monkey (压力测试) 这个是Android提供的系统工具.它向系统发送伪随机的用户事件流(如按键输入.触摸屏输入.手势输入等),实现对正在开发的应用程序进行压力测试.Monkey测试是一种 ...

  5. 【Android压力测试】monkey压力测试

    1.首先安装adb.java环境 2.下载地址: 链接: https://pan.baidu.com/s/1i5xltpN 密码: ra6g monkey 很简单的理解是 像猴子一样一顿点乱点,看是否 ...

  6. 【Android】自动测试工具 Monkey

    前言: 最近开始研究Android自动化测试方法,对其中的一些工具.方法和框架做了一些简单的整理,其中包括android测试框架.CTS.Monkey.Monkeyrunner.benchmark.其 ...

  7. monkey测试===Android测试工具Monkey用法简介(转载)

    Monkey是Android中的一个命令行工具,可以运行在模拟器里或实际设备中.它向系统发送伪随机的用户事件流(如按键输入.触摸屏输入.手势输入等),实现对正在开发的应用程序进行压力测试.Monkey ...

  8. android压力测试monkey简单使用

    monkey是android sdk自带的压力测试工具,简单使用如下: 用adb shell进入adb shell环境后,用下面命令进行测试 monkey -p com.xxx.yyy -v num ...

  9. Android studio测试软件——Monkey学习及运用

    Android studio测试软件——Monkey学习及运用 在第十五周的个人博客上,王老师安排我们根据最终的团队大作业所用的软件(Android studio)进行软件测试的介绍,而我选择的是基于 ...

随机推荐

  1. 在Spring Boot中使用Https

    本文介绍如何在Spring Boot中,使用Https提供服务,并将Http请求自动重定向到Https. Https证书 巧妇难为无米之炊,开始的开始,要先取得Https证书.你可以向证书机构申请证书 ...

  2. [C] C++对C的部分扩充

    C语言只允许变量在程序(或函数)开始处定义,而C++允许变量在程序的任何位置定义. C语言中没有定义作用域限定运算符. C语言中没有布尔类型. C++中关于枚举类型和结构类型的定义更加简洁. C++新 ...

  3. 坑人的微信新版支付(V3.3.6)

         现在微支付的需求越来越多,最近刚接到一个需要微支付的项目,于是身为程序猿的我拿到最新的微信支付接口文档(3.3.6)就开始研究微信支付.本以为应该跟支付宝差不多的感觉结果被坑了.恕在下无能, ...

  4. 使用redis和fastjson做应用和mysql之间的缓存

    第一次做这种javaweb的项目,难免还是要犯很多错误. 大概也知道,redis常常被用来做应用和mysql之间的缓存.模型大概是这样子的. 为了让redis能够缓存mysql数据库中的数据,我写了很 ...

  5. 小meta的大作用

    meta是用来在HTML文档中模拟HTTP协议的响应头报文.meta 标签用于网页的<head>与</head>中,meta 标签的用处很多.meta 的属性有两种:name和 ...

  6. PHP 中的Closure

    PHP 中的Closure Closure,匿名函数,又称为Anonymous functions,是php5.3的时候引入的.匿名函数就是没有定义名字的函数.这点牢牢记住就能理解匿名函数的定义了. ...

  7. 理解SQL Server是如何执行查询的 (3/3)

    页并发访问的保护:闩锁 在多线程并发情况下,需要防止读线程读到写线程正在写的资源,在编程中,通过使用互斥器(Mutexes), 信号量(Semaphore), 临界区(Critical Section ...

  8. C#骏鹏自动售货机接口

    MachineJP类: 第1部分:串口初始化,串口数据读写 using System; using System.Collections.Generic; using System.IO.Ports; ...

  9. Angular 2 要来了,Wijmo 已准备好迎接

    Angular 是一款优秀的前端JS框架,已被用于Google的多款产品中,其核心特点是:MVVM.模块化.自动化双向数据绑定.语义化标签.依赖注入等.6年过去了,Angular 迎来了2.0版本. ...

  10. Tsung测试Tigase

    用两台主机坐Tigase的Tsung测试,其中1台运行Tigase,另1台运行Tsung. 1.Tigase服务器设置 tigase.conf: #osgiEnabled=(true|false) # ...