monkey的具体使用及详细说明

一、monkey是什么?
monkey是SDK中附带的一个工具,该工具主要是用于进行压力测试,以下是一些monkey的信息及使用

二、monkey测试的目的是什么?
monkey用户进行压力测试,然后开发人员结合monkey打印的日志和系统打印的日志,定位测试中出现的问题。

三、Monkey 测试的特点?
Monkey 测试,所有的事件都是随机产生的,不带任何人的主观性。

四、Monkey 命令详解

1).标准的monkey 命令
[adb shell] monkey [options] <eventcount> , 例如:
adb shell monkey -v 500    --------产生500次随机事件,作用在系统中所有activity(其实也不是所有的activity,而是包含  Intent.CATEGORY_LAUNCHER 或Intent.CATEGORY_MONKEY 的activity)。
上面只是一个简单的例子,实际情况中通常会有很多的options 选项
2).四大类—— 常用选项 、 事件选项 、 约束选项 、 调试选项
1:常用选项

--help:打印帮助信息
-v:指定打印信息的详细级别,一个 -v增加一个级别 , 默认级别为 0 。

2:事件选项

-s:指定产生随机事件种子值,相同的种子值产生相同的事件序列。如: -s 200
--throttle:每个事件结束后的间隔时间——降低系统的压力(如不指定,系统会尽快的发送事件序列)。如:--throttle 100
--pct-touch:指定触摸事件的百分比,如:--pct-touch 5% , 相关的还有以下option:
--pct-motion <percent> (滑动事件)、 --pct-trackball <percent> (轨迹球事件) 、 --pct-nav <percent> (导航事件 up/down/left/right)、 --pct-majornav <percent> (主要导航事件 back key 、 menu key)、 --pct-syskeys <percent> (系统按键事件 Home 、Back 、startCall 、 endCall 、 volumeControl)、 --pct-appswitch <percent> (activity之间的切换)、 --pct-anyevent <percent>(任意事件)

3:约束选项

-p:指定有效的package(如不指定,则对系统中所有package有效),一个-p 对应一个有效package, 如:-p com.ckt -p com.ckt.asura;
-c:activity必须至少包含一个指定的category,才能被启动,否则启动不了;

4:调试选项

--dbg-no-events:初始化启动的activity,但是不产生任何事件。
--hprof:指定该项后在事件序列发送前后会立即生成分析报告  —— 一般建议指定该项。
--ignore-crashes:忽略崩溃
--ignore-timeouts:忽略超时
--ignore-security-exceptions:忽略安全异常
--kill-process-after-error:发生错误后直接杀掉进程
--monitor-native-crashes:跟踪本地方法的崩溃问题
--wait-dbg:知道连接了调试器才执行monkey测试。

五、一个简单的monkey命令:
adb shell monkey -p com.xy.android.junit -s 500 -v 10000
但是,工作中为了保证测试数量的完整进行,我们一般不会在发生错误时立刻退出压力测试。monkey 测试命令如下
adb shell monkey -p com.xy.android.junit -s 500 --ignore-crashes --ignore-timeouts --monitor-native-crashes -v -v 10000 > E:\monkey_log\java_monkey_log.txt

六、monkey作用的包:com.ckt.android.junit
产生时间序列的种子值:500
忽略程序崩溃 、 忽略超时 、 监视本地程序崩溃 、 详细信息级别为2 , 产生 10000个事件 。

七:导出手机里执行monkey生成的log:
adb shell monkey -p com.包名.xxx  1000 > C:\monkey.txt
文件直接导出到电脑C盘的monkey文件中

八:可以把monkey命令放在一个.bat文件中,双击bat文件就可以执行,monkey命令如下:

adb shell monkey -p包名 --throttle 2000 --pct-touch 10 --pct-motion 10 --pct-trackball 12  --pct-nav 26 --pct-majornav 25 --pct-syskeys 2 --pct-appswitch 15 --monitor-native-crashes -v -v 5000 > E:\monkey_log\monkeyLog_201501201703.txt

参数:  -v(初级)
用于指定反馈信息级别(信息级别就是日志的详细程度),总共分3个级别

2个-v表示中级,3个-v输入的日志会更详细,具体使用看个人情况。

时间: 2025-01-24 21:46:50

monkey的具体使用及详细说明的相关文章

Monkey工具详解

摘要 1.monkey工具介绍 2.用法 命令详解 3.测试结果分析 Android开发的过程中有很多很小而且实用 的小工具,在android开发的api文档中可以查看.http://www.androidcommunitydocs.com/tools/index.html 今天我来讲一下最近上手的一款工具---------monkey.Api网站上是这么定义的:Monkey是运行在模拟器或者设备上的能够生成伪随机的用户事件流(比如 点击.触摸或者手势,还有许多系统级别的事件)的程序.你可以用M

使用Monkey进行UI或应用程序测试

使用Monkey进行UI或应用程序测试 Monkey是运行于模拟器或手机上的一个程序,通过生成伪随机的大量的系统级的用户事件流来模拟操作,包括单击.触摸.手势等.从而为正在开发中的应用程序通过随机响应进行压力测试. 最简单使用monkey的方式是通过下面的命令行,它可以运行指定的应用程序并向其发送500个伪随机事件. $ adb shell monkey -v -p your.package.name 500 关于monkey更多的选项及详细信息

Android Monkey压力测试

一.Monkey简介: Monkey是Android中的一个命令行工具,可以运行在模拟器里或者现实设备中,向系统发送伪随机的用户事件流(点击.滑动.Application切换.横竖屏.应用关闭)实现对正在开发的应用程序进行压力测试.monkey测试是一种为了测试软件的稳定性,健壮性的快速有效的方法.只针对Activity做测试,不能对Service做测试. 简单的理解: Monkey 是一个 Android 自动化测试小工具.主要用于Android 的压力测试, 主要目的就是为了测试app 是否

adb 使用方法

Android Debug Bridge Android调试桥接器,简称adb,是用于管理模拟器或真机状态的万能工具,采用了客户端-服务器模型,包括三个部分: l  客户端部分,运行在开发用的电脑上,可以在命令行中运行adb命令来调用该客户端,像ADB插件和DDMS这样的Android工具也可以调用adb客户端. l  服务端部分,是运行在开发用电脑上的后台进程,用于管理客户端与运行在模拟器或真机的守护进程通信. l  守护进程部分,运行于模拟器或手机的后台. 当启动adb客户端时,客户端首先检

Monkey测试

1             概述 Monkey测试是Android自动化测试的一种手段.Monkey测试本身非常简单,就是模拟用户的按键输入,触摸屏输入,手势输入等,看设备多长时间会出异常. 当Monkey程序在模拟器或真实设备运行的时候,程序会产生一定数量或一定时间内的随机模拟用户操作的事件, 如点击,按键,手势等, 以及一些系统级别的事件.通常也称随机测试或者稳定性测试. 2             测试步骤 2.1   测试前提条件 1.将手机恢复出厂设置 2.恢复出厂设置后,进入设置--

第6章1节《MonkeyRunner源代码剖析》Monkey原理分析-事件源-事件源概览

在上一章中我们有简要的介绍了事件源是怎么一回事.可是并没有进行详细的描写叙述.那么往下的这几个小节我们就须要把这方面的知识给补充完整. 这一节我们先主要环绕MonkeySourceNetwork这个事件源来学习事件源的框架结构.首先,要理解事件源,必须先搞清楚几个问题: 事件从哪里来? Monkey的事件来源有多个方面,可是作为MonkeyRunner框架的一部分,它的事件来源主要是来自MonkeyRunner通过网络Socket(USB/TCP协议)发送过来的命令字串.MonkeySource

android monkey测试学习

前提是:有安卓环境,能用adb命令 一.Monkey 测试的目的? 该工具可用于测试稳定性. 开发人员结合monkey 打印的日志 和系统打印的日志,解决测试中出现的问题 二.Monkey 测试的特点?Monkey 测试,所有的事件都是随机产生的,不带任何人的主观性 三.monkey命令 adb shell monkey -p com.xxxxx -s 500 -v 10000 但是,工作中为了保证测试数量的完整进行,我们一般不会在发生错误时立刻退出测试,monkey 测试命令如下 adb sh

安卓手机APP压力monkey测试

一.Monkey概述 Monkey是Android中的一个命令行工具,可以运行在模拟器里或实际设备中.它向系统发送伪随机的用户事件流(如按键输入.触摸屏输入.手势输入等),实现对正在开发的应用程序进行压力测试.Monkey测试是一种为了测试软件的稳定性.健壮性的快速有效的方法.Monkey测试是Android平台下自动化测试的一种快速有效的手段. 二.环境配置 JDK配置:根据自己的电脑系统位数,选择适当的JDK,若自己电脑系统是32位,尽量也选择使用32位的JDK,在此以此为例进行详解.JDK

Android之monkey Test

一.Monkey简介 Monkey是Android中的一个命令行工具,可以运行在模拟器里或实际设备中.它向系统发送伪随机的用户事件流(如按键输入.触摸屏输入.手势输入等),实现对正在开发的应用程序进行测试.Monkey测试是一种为了测试软件的稳定性.健壮性的快速有效的方法.   二.Monkey程序介绍 1) Monkey程序由Android系统自带,使用Java语言写成,在Android文件系统中的存放路径是:/system/framework/monkey.jar: 2) Monkey.ja