Monkey操作手册

合集下载

monkey工具介绍及用法

monkey工具介绍及用法

monkey⼯具介绍及⽤法monkey是android 系统⾃带的⼀个命令⾏⼯具,可以向被测应⽤程序发送伪随机的⽤户事件流(如按键、触屏、滑动等操作),实现对应⽤程序进⾏测试的⽬的。

monkey测试也叫猴⼦测试,是指测试时可以像好奇的猴⼦⼀样,不停的对应⽤程序进⾏随机操作,以便验证应⽤程序的稳定性和健壮性。

因此,monkey测试是软件稳定性,健壮性的测试⼯具下⾯是monkey提供的⼀些参数:参数:事件相关参数表:-s <seed> 这个参数是伪随机数⽣成器的种⼦值,如果⽤相同的随机种⼦值再次运⾏相同的monkey命令时,前、后两次执⾏的操作事件序列相同,也就是相同的操作。

--throttle <milliseconds> 这个参数是设定在两个事件之间插⼊⼀个固定延时,它可以减缓Monkey的执⾏速度。

如果您不指定选项,Monkey将不会被延迟,事件将尽可能快地⽣产和发送消息。

--pct-touch <percent> 这个参数是设定触屏事件⽣产的百分⽐,触屏事件是⼀个有⼿指按下、抬起事件的操作。

--pct-motion <percent> 这个参数是设定滑动事件⽣成的百分⽐,滑动事件是⼀个先在某⼀个位置⼿指按下,滑动⼀段距离后再抬起⼿势的操作。

--pct-trackball <percent> 这个参数是设定轨迹球事件⽣成的百分⽐,轨迹球事件是包含⼀系列随机移动和单击事件的操作。

--pct-nav <percent> 这个参数是设置基本的导航事件的百分⽐,基本导航事件的模拟⽅向性设置输⼊向上、向下、向左、向右的操作。

--pct-majornav <percent> 这个参数是设定主要导航事件的百分⽐,主要导航事件通常是导致UI产⽣回馈事件,如:单击BACK键,单击MENU键。

--pct-syskeys <percent> 这个参数是设定系统按键事件的百分⽐,系统按键是指这些按键通常被保留,由系统使⽤,如HOME,BACK,拨号,挂断及⾳量控制键。

monkey脚本

monkey脚本

monkey脚本前面更新的关于monkey的参数等内容都是关于monkey随机性的测试,今天我们要整理的monkey脚本是关于特定场景的测试,monkey支持用户自动以测试脚本,我们只需按照monkey的脚本规范写好脚本,并将脚本放到手机上,启动monkey通过-f参数调用脚本即可。

测试场景:以我们单位自己的APP为例,做一个登录场景的测试。

需求分析:1、登录的操作步骤2、如何定位元素,并输入相应的用户名和密码3、怎样转化为脚本针对上面三个问题我们分步解答操作步骤1、首先我们要在手机上点击APP的图标(也就是包),启动程序,进入启动页面。

2、然后点击用户名的输入框(定位到用户名输入框),输入用户名。

3、点击密码输入框,(定位到密码输入框),输入密码。

4、点击【登录】按钮(定位到登录按钮,并单击)元素定位Monkey脚本通过坐标的方式来定位点击和移动时间的屏幕位置,这里需要提前获取坐标信息。

获取坐标信息在开发者选项->指针位置。

打开指针位置后,当我们点击屏幕的任意位置,在页面的顶端都会显示坐标位置,如图:编写脚本在编写脚本之前,我们首先要了解一下常用的Monkey 脚本API。

1、LaunchActivity(pkg_name,cl_name):启动应用的Activity。

参数:包名和启动的Activity。

2、Tap (x,y,tapDuration):模拟一次手指单击事件。

参数:x,y为控件坐标,tapDuration为单击的持续时间,此参数可忽略。

3、UserWait(sleepTime):休眠一段时间4、DispatchPress (keyName):按键。

参数:keycode。

5、RotateScreen(rotationDegree,persist):屏幕旋转。

参数:rotationDegree 为旋转角度,eg:1代表90度;persist表示旋转之后是否固定,0表示旋转后恢复,非0则表示固定不变。

monkey常用命令详解

monkey常用命令详解

monkey常用命令详解monkey是一款常用的压力测试工具,用于模拟多个并发用户对系统进行压力测试。

本文将详细介绍monkey的常用命令及其功能。

1. monkey的基本命令monkey的基本命令是最常用的命令之一,它用于启动monkey的工作。

可以通过以下命令来启动monkey:```adb shell monkey [options] <event-count>```其中,`event-count`表示要执行的事件数量,可以根据需要进行调整。

而`options`是一些可选参数,用于指定monkey的具体行为。

2. monkey的事件类型在monkey中,有许多不同类型的事件可以执行。

以下是一些常见的事件类型及其对应的命令:- 点击事件(Tap):用于模拟用户点击屏幕上的某个位置,可以使用`--pct-touch`参数指定触摸事件的百分比。

```adb shell monkey --pct-touch <percentage> <event-count>```- 滑动事件(Swipe):用于模拟用户滑动屏幕的操作,可以使用`--pct-motion`参数指定滑动事件的百分比。

```adb shell monkey --pct-motion <percentage> <event-count>```- 按键事件(Key):用于模拟用户按键的操作,可以使用`--pct-keyevent`参数指定按键事件的百分比。

```adb shell monkey --pct-keyevent <percentage> <event-count>```- 启动应用(Launch):用于模拟用户启动应用的操作,可以使用`--pct-appswitch`参数指定启动应用的百分比。

```adb shell monkey --pct-appswitch <percentage> <event-count>```3. monkey的其他常用命令除了基本命令和事件类型外,monkey还提供了一些其他常用的命令,用于进一步控制monkey的行为。

Monkey的使用方法

Monkey的使用方法

Monkey的使用方法
adb shell monkey -s 100 --throttle 300 -p cn.lt.game -v 1000
-s指的是种子数,不同的种子数,跑出来的路径也不一样,种子数的范围是0~10000,可随便设置
--throttle代表的是延时,每两次操作之间的间隔延时,单位是ms
-p后面接的是应用的包名
-v指的是操作LOG的级别
最后一个数据指的是跑的次数,一般是跑100000次,如果用不同的种子数跑3轮100000次都没有出现问题,则说明该应用很稳定
1.修改-s后面的参数,复制命令在CMD模式下运行以上命令,按回车键即可运行
2.在跑Monkey的过程中连接上PowerCMD工具,使用adb logcat -v time &命令抓取LOG
3.如果在运行过程中出现错误,Monkey会自动停止,此时保存LOG即可提交BUG。

Monkey入门介绍

Monkey入门介绍



C、 StaleDataException、readException等异常, 在plog.log中可以看 到 相 应 的 打 印 信 息 , 也 会 有 相 应 的 信 息 : android.database.StaleDataException,该信息说明android的数据库操 作出现异常, 需要具体问题具体的分析 D、 IllegalArgumentException等异常,多少情况下为说明向函数传递 了一个不正确或不合法的参数需要具体问题具体的分析 E、 其他,带补充和分析说明





D 、可能同一应用中存在多处的空指针异常,所以一旦出现空指异常 后,可以分析和对比log 信息,如果不一致的话,需要把新的log信息 也一同添加到bug中,如果log信息一直的话,则不需要继续补充没有 必要的log信息。

7.2debug异常 debug异常主要是由于应用程序本身的错误导致的异常。在Monkey测 试过程中,该信息同样记录在plog.log (locat中也有该信息)中。一般 情况下,出现的该问题,很可能在手动测试时也可以测试到。 A、 com.android.browser该进程进入debug B、 出现的是IllegalStateException异常,该异常一般多是传递的参数 非法或被多次调用时出现的异常 C、 Bug信息提交时,详细信息中一般应该包含如下的log信息,方便 开发人员分析和定位。
揭开一个神秘稳定性测试工具的面纱...
Monkey入门介绍
Android系列 制作:Mads(吴越欣)
那么问题来了,什么是monkey...
1.什么是monkey
monkey是运行在你的程序 模拟器或设备,并生成 用户事件的伪随机流,例如点击,触摸,或手势, 以及若干系统级事件。您可以使用monkey压力测试 应用程序。Monkey 测试,所有的事件都是随机产生 的,不带任何人的主观性。

Monkey命令参数介绍

Monkey命令参数介绍
详情见下列具体参数
--pct-touch{+百分比}
调整触摸事件的百分比(触摸事件是一个down-up事件,它发生在屏幕上的某单一位置)
adb shell monkey -p com.htc.Weather --pct-touch 10 1000
--pct-motion{+百分比}
调整动作事件的百分比(动作事件由屏幕上某处的一个down事件、一系列的伪随机事件和一个up事件组成)
adb shell monkey -p com.htc.Weather --pct-anyevent 50 --pct-appswitch 50 1000
注意:各事件类型的百分比总数不能超过100%
--pct-appswitch{+百分比}
调整启动Activity的百分比。在随机间隔里,Monkey将执行一个startActivity()调用,作为最大程度覆盖包中全部Activity的一种方法
adb shell monkey -p com.htc.Weather --pct-appswitch 70 1000
--pct-anyevent{+百分比}
调整其它类型事件的百分比。它包罗了所有其它类型的事件,如:按键、其它不常用的设备按钮、等等
*指定单个类型事件的百分比:
adb shell monkey -p com.htc.Weather --pct -anyevent 100 1000
*指定多个类型事件的百分比:
adb shell monkey -p com.htc.Weather --pct-majornav 50 1000
--pct-syskeys{+百分比}
调整“系统”按键事件的百分比(这些按键通常被保留,由系统使用,如Home、Back、Start Call、End Call及音量控制键)

monkey命令详解

monkey命令详解

Android上压力测试命令monkey详解一、Monkey 是什么◆Monkey是Android SDK中附带的一个命令行工具,可以运行在模拟器或者实际设备中◆向系统发送伪随机的用户事件流(按键输入、触摸屏输入、手势输入等)◆实现对正在开发的应用程序进行压力测试◆Monkey测试是一种为了测试软件的稳定性、健壮性的快速有效的方法二、Monkey程序介绍◆Monkey程序由Android系统自带,使用Java语言写成,在Android文件系统中的存放路径是:/system/framework/monkey.jar◆Monkey.jar程序是由一个名为“monkey”的Shell脚本来启动执行,shell脚本在Android文件系统中的存放路径是:/system/bin/monkey三、Monkey 测试的目的开发人员结合monkey 打印的日志和系统打印的日志,分析测试中出现的问题◆ANR问题:在日志中搜索“ANR”◆崩溃的问题:在日志中搜索“Exception”说明:ANR:Application Not Responding,在Android中,如果应该程序有一段时间响应不够灵敏,系统会向用户显示一个对话框,这个对话框称作应用程序无响应对话框,用户可以选择“等待”而让程序继续运行,也可以选择“强制关闭”应用。

好的程序应该能流畅运行,不能出现ANR问题。

四、Monkey 测试的特点◆测试的对象仅为应用程序包,有一定的局限性(不能对源码进行测试)◆测试使用的所有事件流数据流都是随机产生的,不能进行自定义,不带任何人的主观性◆可对MonkeyTest的对象,事件数量,类型,频率等进行设置五、Monkey 命令详解1、标准的monkey 命令[adb shell] monkey [options] <eventcount>如果不指定options,Monkey将以无反馈模式启动,并把事件任意发送到安装在目标环境中的全部包如:adb shell monkey -p -v 500-p 指定测试程序包名-v 显示默认程度的信息500 事件数设定为500启动指定的应用程序,并向其发送500个伪随机事件,作用在系统中所有activity(其实也不是所有的activity,而是包含Intent.CATEGORY_LAUNCHER 或Intent.CATEGORY_MONKEY 的activity)上面只是一个简单的例子,实际情况中通常会有很多的options 选项2、四大类——常用选项、事件选项、约束选项、调试选项✧常用选项--help:打印帮助信息,列出简单的用法adb shell monkey –help✧-v:指定打印信息的详细级别(即:日志的详细程度),一个-v增加一个级别*如:*adb shell monkey -p packagename -v -v – throttle 600 88-v -v :Level 1,提供较为详细的测试信息,如:逐个发送到Activity的事件--throttle 600:每个操作都间隔时间600ms88:执行的事件数Monkey报告等级总共3级,默认级别为0Level 0(缺省值),除启动提示、测试完成和最终结果之外,提供较少信息adb shellmonkey -p packagename -v 100Level 1,提供较为详细的测试信息,如:逐个发送到Activity的事件信息adb shellmonkey -p packagename -v -v 100Level 2,提供更加详细的设置信息,如:测试中被选中的或未被选中的Activityadb shellmonkey -p packagename -v -v -v 1002)事件选项✧-s<seed>:指定伪随机数生成器的seed值,如果用相同的seed值再次运行Monkey,则两次Monkey测试所产生的事件序列相同举例:Monkey测试1:adb shell monkey -p packagename -s 10 100Monkey测试2:adb shell monkey -p packagename -s 10 100两次测试的效果是相同的说明:模拟的操作序列(每次操作按照一定的先后顺序所组成的一系列操作,即一个序列)虽然是随机生成的,但是只要我们指定了相同的Seed值,就可以保证两次测试产生的随机操作序列是完全相同的,所以这个操作序列是伪随机的✧--throttle<milliseconds>:指定每个事件结束后的间隔时间,单位毫秒举例:adb shell monkey -p packagename -throttle 100说明:指定了固定的延迟时间后,可以减缓Monkey的执行速度,降低系统的压力。

Monkey使用说明书

Monkey使用说明书

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

Moneky测试是为了测试软件的稳定性、健壮性的一种有效方法。

二.Monkey的特征测试的对象仅为应用程序包,有一定局限性Moneky测试的时间是随机的不能进行自定义可对monkey test 的对象、事件数量、类型、频率等进行设置。

三.Monkey使用环境的搭建Monkey环境配置:首先搭建monkey的运行环境在Windows下基于SDK1.下载SDK for Windows 解压:android-sdk-windows 到D:盘根目录2. 设置sdk下面tools的环境变量(具体参考百度,有详细说明)/article/f71d603757965b1ab641d12a.html(在下载Sdk前要下载JDK,关于JDK环境变量的配置请参考/article/e9fb46e1b2b3347521f766c1.html)SDK本身的安装是通过sdk manager这个程序下载相关的安装包来进行的,安装好后不会有图标显示在桌面上,因为其本身只是提供相关工具包的使用。

在sdk manager下载过程中,因为谷歌在中国被封杀,而相关工具包的下载都是通过谷歌下载的,所以大家会发现下载速度超慢并且下载经常中断,这里大家可以用迅雷直接在下载地址里下载:在右下角有个log点击可看到如下:在Parse XML下即为该该地址文档里所包含的文件,用迅雷将Parse XML后的地址下载打开,再在里面找到要用的文件名,将Parse XML 地址最后面的部分改为文件名成为一个新链接后,将此链接放在迅雷里下载即可。

下载后的文件放到sdk的tools文件夹下并且记得重新打开sdk manager进行安装:点击下载好的文件,然后点击左边的install即可。

monkey基本命令

monkey基本命令

monkey基本命令当我们在Linux系统中使用命令行进行操作时,常常需要使用一些基本命令来完成我们的任务。

其中,monkey命令是一个非常实用的工具,它能够通过网络传输文件、创建服务器和处理HTTP请求等。

首先,我们来介绍一下monkey命令的基本语法。

在终端中输入“monkey”之后,我们可以跟随着一些选项和参数来进行具体的操作。

其中,比较常用的选项包括“-h”(帮助信息),“-v”(版本号),“-d”(后台运行)等。

此外,在输入monkey命令时我们还需要指定具体的操作,如“start”(启动服务器)、“stop”(关闭服务器)、“status”(查看服务器状态)等。

关于monkey的具体使用,我们可以从以下三个方面来进行介绍。

第一,文件传输。

通过输入“monkey -p [port]”命令,我们可以在指定的端口上启动一个临时的Web服务器,然后通过浏览器或curl命令将文件上传到该服务器上。

第二,创建服务器。

通过输入“monkey -p [port] -m [module]”命令,我们可以在指定的端口上启动一个动态网站,并使用指定的模块来处理HTTP请求。

这样的操作对于搭建简单的Web应用程序非常有帮助。

第三,处理HTTP请求。

通过使用monkey,我们可以在终端中查看HTTP请求的详细信息。

通过输入“monkey -p [port] -w”命令,我们可以将请求信息输出到终端上,并通过浏览器向服务器发送请求,从而查看请求信息和服务器的响应。

综上所述,monkey是一个非常实用的命令,它可以帮助我们完成文件传输、创建服务器和处理HTTP请求等任务。

在日常使用中,掌握这些基本操作将会带来很大的便利。

monkey的使用

monkey的使用

monkey的使用【原创实用版】目录1.Monkey 简介2.Monkey 的基本使用方法3.Monkey 的高级功能4.Monkey 的实际应用案例5.Monkey 的优缺点正文1.Monkey 简介Monkey 是一个开源的 Android 应用程序自动化测试工具,它可以帮助开发者快速编写和运行应用程序的自动化测试。

Monkey 可以在真实的Android 设备或模拟器上运行,并能够随机生成测试数据,从而有效地检测应用程序的稳定性和性能。

2.Monkey 的基本使用方法要开始使用 Monkey,首先需要在 Android 项目中添加 Monkey 的依赖。

然后,编写一个或多个测试脚本,这些脚本可以描述应用程序的各个功能模块。

接着,在命令行中运行"monkey"命令,指定要运行的测试脚本。

Monkey 会自动打开应用程序,并按照测试脚本的描述运行测试。

3.Monkey 的高级功能除了基本的自动化测试功能外,Monkey 还提供了许多高级功能,如:- 随机测试数据生成:Monkey 可以根据测试脚本的描述,随机生成各种测试数据,从而有效地检测应用程序的性能和稳定性。

- 测试结果分析:Monkey 可以生成详细的测试结果报告,包括每个测试用例的执行情况,以及应用程序的性能指标。

- 强大的命令行工具:Monkey 提供了丰富的命令行选项,可以方便地控制测试的执行,查看测试结果,以及进行其他相关操作。

4.Monkey 的实际应用案例例如,假设有一个电子商务应用程序,需要测试其购物车功能。

可以使用 Monkey 编写一个测试脚本,描述添加商品、修改数量、移除商品、结算等操作。

然后,运行 Monkey,它会自动打开应用程序,并按照测试脚本的描述运行测试。

如果测试过程中发现任何问题,Monkey 会立即报告。

5.Monkey 的优缺点Monkey 的优点包括:- 简单易用:Monkey 的语法简单,入门门槛低,开发者可以快速上手。

monkey常用指令

monkey常用指令

1、-v命令行的每一个-v将增加反馈信息的级别。

Level 0(缺省值)除启动提示、测试完成和最终结果之外,提供较少信息。

Level 1提供较为详细的测试信息,如逐个发送到Activity的事件。

Level 2提供更加详细的设置信息,如测试中被选中的或未被选中的Activity。

事件2、-s <seed>伪随机数生成器的seed值。

如果用相同的seed值再次运行Monkey,它将生成相同的事件序列。

3、–throttle <milliseconds>在事件之间插入固定延迟。

通过这个选项可以减缓Monkey的执行速度。

如果不指定该选项,Monkey将不会被延迟,事件将尽可能快地被产成。

4、–pct-touch <percent>调整触摸事件的百分比(触摸事件是一个down-up事件,它发生在屏幕上的某单一位置)。

5、–pct-motion <percent>调整动作事件的百分比(动作事件由屏幕上某处的一个down事件、一系列的伪随机事件和一个up事件组成)。

6、–pct-trackball <percent>调整轨迹事件的百分比(轨迹事件由一个或几个随机的移动组成,有时还伴随有点击)。

7、–pct-nav<percent>调整“基本”导航事件的百分比(导航事件由来自方向输入设备的up/down/left/right组成)。

8、–pct-majornav<percent>调整“主要”导航事件的百分比(这些导航事件通常引发图形界面中的动作,如:5-way键盘的中间按键、回退按键、菜单按键)9、–pct-syskeys<percent>调整“系统”按键事件的百分比(这些按键通常被保留,由系统使用,如Home、Back、Start Call、End Call及音量控制键)。

10、–pct-appswitch<percent>调整启动Activity的百分比。

Monkey事件详解与命令

Monkey事件详解与命令

Monkey事件详解与命令Monkey是⼀个程序,运⾏在模拟器或设备上,并⽣成伪随机的⽤户事件流,如点击,触摸或⼿势,以及⼀些系统及事件,可以使⽤Monkey以随机但重复的⽅式对正在开发的应⽤程序进⾏压⼒测试与稳定性测试Monkey 所执⾏的随机事件包含11⼤事件分别是:触摸事件、⼿势事件、⼆指缩放事件、轨迹事件、屏幕旋转事件、基本导航事件、主要导航事件、系统按键事件、启动Activity事件、键盘事件、其他事件各个事件对应的名称1 触摸事件(通过--pct-touch配置百分⽐): Touch (ACTION_DOWN)和 TOUCH(ACTION_UP)也就是点击2 ⼿势事件(通过--pct-motion配置百分⽐): 指在屏幕某处按下随机移动、抬起操作,即直线滑动操作, 该事件是由 ACTION_DOWN事件、⼀系列ACTION_MOVE事件和⼀个ACTION_UP 事件组成,在⼿机上实际操作是⼀个没有拐弯的直线滑动操作3 ⼆指缩放事件(通过--pctpinchzoom配置百分⽐): 即智能机上放⼤缩⼩⼿势操作,该事件起始是⼀个ACTION_DOWN事件和 ⼀个ACTION_POINTER_DOWN事件,即模拟两指同时点下,中间是⼀系列的 ACTION_MOVE事件,即两指直线滑动,结束是ACTION_POINTER_UP事件与 ACTION_UP事件即两指同时放开4 轨迹事件(通过--pct-trackball配置百分⽐): 由⼀系列Trackball(ACTION_MOVE)事件组成,即为⼀系列曲线滑动操作5 屏幕旋转事件(通过--pct-rotation配置百分⽐): 该事件由⼀个rotation 事件组成,其中degree表⽰旋转⽅向6 基本导航事件(通过--pct-nav配置百分⽐): 该·事件由⼀个Key(ACTION_DOWN)和⼀个Key(ACTION_UP)组成, 点击的就是上下左右四个⽅向键(基本已经淘汰,按键机)7 主要导航事件(通过--pct-majornav配置百分⽐): 该事件由⼀个key(ACTION_DOWN)和⼀个Key(ACTIONUP)组成,点击的是中间键和菜单键8 系统按键事件(通过--pct-syskeys配置百分⽐): 该事件由⼀个Key(ACTION_DOWN)和Key(ACTION_UP)组成,点击home,返回,⾳量调节键9 启动Activity事件(通过--pct-appswitch配置百分⽐): 该事件由⼀个Swith操作组成,就是打开⼀个⼀个Activity页⾯10 按键事件(通过--pct-flip配置百分⽐): 主要是键盘的打开和关闭操作,如点击输⼊框,键盘弹起,点击输⼊框以为区域,收回键盘11 其他事件类型(通过--pct-anyevent配置百分⽐): 该事件是由⼀个key(ACTION_DOWN) 和⼀个Key(ACTION_UP)组成,点击的是系统按键, 字母键,数字键,现在⼿机很少带字母数字按键,所以⼀般使⽤的⽐较少启动步骤连接移动设备 -- 连接成功后输⼊命令 -- adb shell -- 进⼊指定⽬录cd /system/bin -- 输⼊ monkey命令命令:1 adb shell monkey 100 (对模拟器进⾏随机事件)2 adb shell monkey -v 100 ( -v 打印⽇志)3 adb shell monkey -s 666 100 (伪随机数种⼦值)对随机事件编码,可以再次复习这才随机。

APP测试--Monkey命令

APP测试--Monkey命令

shell, monkey, system, Android, 文件系统Monkey, 示例, 简介一、Monkey测试简介Monkey测试是Android平台自动化测试的一种手段,通过Monkey程序模拟用户触摸屏幕、滑动Trackball、按键等操作来对设备上的程序进行压力测试,检测程序多久的时间会发生异常。

二、Monkey程序介绍1) Monkey程序由Android系统自带,使用Java语言写成,在Android文件系统中的存放路径是:/system/framework/monkey.jar;2) Monkey.jar程序是由一个名为“monkey”的Shell脚本来启动执行,shell脚本在Android 文件系统中的存放路径是:/system/bin/monkey;这样就可以通过在CMD窗口中执行: adb shell monkey {+命令参数}来进行Monkey测试了。

三、Monkey命令的简单帮助要获取Monkey命令自带的简单帮助,在CMD中执行命令:adb shell monkey –help四、Monkey命令参数介绍1) 参数:-p参数-p用于约束限制,用此参数指定一个或多个包(Package,即App)。

指定包之后,Monkey将只允许系统启动指定的APP。

如果不指定包,Monkey将允许系统启动设备中的所有APP。

* 指定一个包:adb shell monkey -p com.htc.Weather 100说明:com.htc.Weather为包名,100是事件计数(即让Monkey程序模拟100次随机用户事件)。

* 指定多个包:adb shell monkey -p com.htc.Weather–p com.htc.pdfreader -p com.htc.photo.widgets 100* 不指定包:adb shell monkey 100说明:Monkey随机启动APP并发送100个随机事件。

android测试monkey使用方法

android测试monkey使用方法

接下来看一个实例Monkey的用法是$ adb shell monkey -p -v 500 ,首先,我们要找到应用程序在Emulator中所对应的包名,我一开始是一个个目录找得,前7步完成了这项工作,最终发现应用程序包都在data/data下,你可以在shell 中cd data/data,然后ls查看当前Emulator中的所有应用程序包。

假如我们想对SDK中的APIDemos做压力测试,1.在Eclipse中新建工程,将:\android-sdk-windows\samples\android-8\samples\ApiDemos添加到工程中点击运行,此时,他的APK应该加载到了Emulator上2.在命令行输入adb shell3.输入ls查看当前文件夹下的目录,执行结果如下C:\Documents and Settings\fanfq>adb shell# lslsconfigcachesdcardacctmntdetcsystemsyssbinprocinit.rcinit.goldfish.rcinitdefault.propdatarootdev4.应用程序包都在data下,我们输入cd data进入data文件夹,如下# cd datacd data5.输入ls查看文件夹下的内容,如下所示:# lslsbackuppropertydatamisclocalapp-privatedontpanicsystemappdalvik-cachelost+found6.还有个data,所有的应用程序就在这个data下了,进入这个data,然后输入ls如下:# cd datacd data# lslscom.android.fallbackcom.android.providers.settingscom.android.inputmethod.pinyinunchercom.android.providers.telephonycom.android.providers.contactscom.android.providers.downloadscom.android.emailcom.android.alarmclockcom.android.mmscom.example.android.apiscom.android.settingstinerdictionarycom.android.musiccom.android.cameracom.android.certinstallerandroid.ttscom.svox.picocom.android.browsercom.android.providers.applications speedcom.android.gallerycom.android.htmlviewercom.android.customlocalecom.android.termcom.android.providers.mediacom.android.wallpaper.livepicker com.android.providers.drmcom.android.speechrecordercom.android.server.vpncom.android.packageinstaller com.android.protipscom.android.developmentcom.android.defcontainercom.android.carhomecom.android.cardockcom.android.calculator2com.android.spare_partsjp.co.omronsoft.openwnncom.android.sdksetupcom.android.contactscom.android.soundrecordercom.android.providers.subscribedfeedscom.android.phone7.最后一个就是我们刚才加载的APIDemo的应用程序包8.可以直接输入monkey -p com.example.android.apis -v 50,结果如下,也可以退出shell,在命令行输入,adb shell monkey -pcom.example.android.apis -v 500 ,运行过程中,Emulator中的应用程序在不断地切换画面,可以看一下,呵呵# monkey -p com.example.android.apis -v 50monkey -p com.example.android.apis -v 50:Monkey: seed=0 count=50:AllowPackage: com.example.android.apis:IncludeCategory: UNCHER:IncludeCategory: android.intent.category.MONKEY// Event percentages:// 0: 15.0%// 1: 10.0%// 2: 15.0%// 3: 25.0%// 4: 15.0%// 5: 2.0%// 6: 2.0%// 7: 1.0%// 8: 15.0%:Switch:#Intent;action=android.intent.action.MAIN;category=android.intent.cat egUNCHER;launchFlags=0x10000000;component=com.example.android.apis/.ApiDemos;end// Allowing start of Intent { act=android.intent.action.MAINcat=[UNCHER]cmp=com.example.android.apis/.ApiDemos } in package com.example.android.apis:Sending Pointer ACTION_MOVE x=-4.0 y=2.0:Sending Pointer ACTION_UP x=0.0 y=0.0// Allowing start of Intent { cmp=com.example.android.apis/.ApiDemos } in package com.example.android.apis:Sending Pointer ACTION_DOWN x=207.0 y=282.0:Sending Pointer ACTION_UP x=189.0 y=289.0// Allowing start of Intent { cmp=com.example.android.apis/.app.Intents } inpackage com.example.android.apis:Sending Pointer ACTION_DOWN x=95.0 y=259.0:Sending Pointer ACTION_UP x=95.0 y=259.0:Sending Pointer ACTION_DOWN x=295.0 y=223.0:Sending Pointer ACTION_UP x=290.0 y=213.0:Sending Pointer ACTION_MOVE x=-5.0 y=3.0:Dropped: keys=0 pointers=0 trackballs=0 flips=0## Network stats: elapsed time=3799ms (3799ms mobile, 0ms wifi, 0ms not connected)// Monkey finished此文档居然有被翻译成英文版的,/the-android-monkey-automated-testing-tools/。

monkey工具的使用

monkey工具的使用

monkey工具的使用
Monkey是一个Android上的压力测试工具,可以模拟用户交互行为,如滑动屏幕、点击按钮、输入文字等,从而测试应用程序的稳定性和性能
表现。

以下是使用Monkey工具的步骤:
1. 准备工作:将Monkey工具添加到系统路径中,并在设备或模拟器
上开启USB调试模式。

2. 编写Monkey命令:打开终端或命令提示符窗口,输入如下命令:
$ adb shell monkey [options] <event-count>。

其中,options是可选的参数,event-count是要执行的事件数量。

3. 运行Monkey命令:在终端或命令提示符窗口中输入上一步编写的Monkey命令,并等待Monkey工具执行。

4. 分析Monkey日志:在执行完Monkey命令后,可以通过查看日志
文件来分析应用程序的稳定性和性能表现。

需要注意的是,Monkey工具是一种压力测试工具,如果在测试过程
中出现应用程序崩溃、界面卡顿等问题,可以通过分析日志文件找出具体
原因,并进行修复。

monkey 命令参数

monkey 命令参数

monkey 命令参数monkey命令参数概述:在软件开发过程中,为了保证应用程序的稳定性和可靠性,我们通常会进行各种测试。

而在Android开发中,我们可以使用monkey 工具来进行压力测试和随机事件测试。

monkey是Android SDK 中自带的一个命令行工具,可以模拟用户的随机操作,对应用程序进行压力测试。

一、介绍monkey是一个命令行工具,它可以模拟用户的随机操作,对应用程序进行压力测试。

它可以模拟按键操作、触摸事件、手势事件等,从而对应用程序的稳定性和可靠性进行测试。

二、使用方法1. 打开命令行窗口,进入到Android SDK的tools目录下;2. 输入monkey命令,后面跟上参数,即可执行monkey测试。

三、常用参数1. -p <包名>:指定要测试的应用程序的包名;2. -v <次数>:指定要执行的事件次数;3. --throttle <毫秒>:指定事件之间的延时时间;4. --pct-touch <百分比>:指定触摸事件的百分比;5. --pct-motion <百分比>:指定手势事件的百分比;6. --pct-nav <百分比>:指定导航事件的百分比;7. --pct-majornav <百分比>:指定主要导航事件的百分比;8. --pct-syskeys <百分比>:指定系统按键事件的百分比;9. --pct-appswitch <百分比>:指定应用程序切换事件的百分比;10. --pct-anyevent <百分比>:指定任意事件的百分比;11. --pct-pinchzoom <百分比>:指定缩放事件的百分比;12. --pct-permission <百分比>:指定权限请求事件的百分比;13. --pct-trackball <百分比>:指定轨迹球事件的百分比;14. --pct-rotation <百分比>:指定旋转事件的百分比;15. --ignore-crashes:忽略应用程序的崩溃;16. --ignore-timeouts:忽略超时错误;17. --ignore-security-exceptions:忽略安全异常;18. --kill-process-after-error:在错误发生后杀死进程。

Monkey的使用

Monkey的使用

Monkey的使⽤Windows monkey 环境搭建教程⼀、JDK环境搭建1、Monkey是什么?Monkey 是⼀个命令⾏⼯具,可以运⾏在 Android 模拟器⾥或真实设备中。

它可以向系统发送伪随机(pseudo-random)的⽤户事件流(如按键输⼊、触摸屏输⼊、⼿势输⼊等),可以对待测的⽬标应⽤或整个 Android 系统进⾏压⼒测试。

因此 Monkey 测试是⼀种为了测试软件的稳定性、健壮性的快速有效的⽅法2、Monkey在哪⾥?每⼀台android⼿机⾥⾯都有Monkey⼯具,但是我们是看不到的,因为它不是⼀个可视化的⼯具。

它不像wechat是可视化的,能打开,能执⾏⽤户操作,有图形界⾯,Monkey没有。

3、如何与Monkey进⾏通讯?我们需要借助ADB(Android Debug Bridge),安卓调试桥。

4、安装monkey环境前提条件:(1)安装java jdk(2)安装android sdk(3)安卓设备(真机/模拟器)1)安装jdk:官⽹下载链接地址:jdk下载地址:(这⼉需要注册各oracle账号【、Chen123456 】才能下载,注册只⽤校验邮箱尽管注册就是啦)配置jdk环境变量1、安装完JDK后配置环境变量计算机→系统属性→⾼级系统设置→⾼级→环境变量。

2、点击环境变量,系统变量→新建 JAVA_HOME 变量。

变量值填写jdk的安装⽬录(我的是 C:\Program Files\Java\jdk1.8.0_101)3、系统变量→寻找 Path 变量→编辑在变量值最后输⼊ %JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;(注意原来Path的变量值末尾有没有;号,如果没有,先输⼊;号再输⼊上⾯的代码)4、系统变量→新建 CLASSPATH 变量变量值填写 .;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar(注意最前⾯有⼀点)系统变量配置完毕5、检验是否配置成功运⾏cmd 输⼊ java -version (java 和 -version 之间有空格)若如图所⽰显⽰版本信息则说明安装和配置成功。

monkey的常用操作

monkey的常用操作

"Monkey" 通常指的是"Android Monkey",它是一种用于测试Android 应用程序的工具。

以下是一些"Monkey" 的常用操作:
1. 启动"Monkey" 测试:通过命令行或者开发工具启动"Monkey" 测试。

2. 设置测试参数:可以设置如事件数量、触摸事件百分比、滑动事件百分比等参数。

3. 运行测试:启动"Monkey" 测试后,它会模拟用户操作,如点击、滑动、输入等,对应用程序进行随机测试。

4. 查看测试结果:"Monkey" 会生成测试报告,其中包含了测试过程中发生的事件、崩溃等信息。

5. 分析崩溃:如果测试过程中发生了崩溃,可以通过分析崩溃日志来定位和修复问题。

6. 重复测试:根据需要,可以重复运行"Monkey" 测试,以确保问题得到修复。

这些是"Monkey" 的一些常用操作,它可以帮助开发者发现应用程序
中的稳定性问题和兼容性问题。

在使用"Monkey" 进行测试时,需要根据实际需求合理设置测试参数,并结合其他测试方法进行综合测试。

monkey基本命令

monkey基本命令

monkey基本命令Monkey基本命令在移动应用开发中,Monkey是一个非常有用的工具,它可以帮助开发人员测试应用的稳定性和性能。

Monkey命令是一组用于控制Monkey工具的命令行指令,下面将介绍一些常用的Monkey基本命令。

1. adb命令adb命令是Android Debug Bridge的缩写,它是一种用于与Android设备通信的命令行工具。

在使用Monkey之前,首先需要通过adb命令连接到测试设备。

连接成功后,可以使用adb命令安装应用、启动应用等。

2. Monkey命令Monkey命令是控制Monkey工具的核心命令,它可以通过发送一系列的伪随机事件来模拟用户操作。

下面是一些常用的Monkey命令:- monkey -p package_name count:使用指定的包名启动应用,并执行指定次数的事件。

- monkey -p package_name --throttle milliseconds count:在执行事件之间添加延迟,以模拟真实用户的操作速度。

- monkey --pct-touch percentage:设置触摸事件的百分比。

- monkey --pct-motion percentage:设置滑动事件的百分比。

- monkey --pct-trackball percentage:设置轨迹球事件的百分比。

- monkey --pct-nav percentage:设置导航事件的百分比。

- monkey --pct-majornav percentage:设置主要导航事件的百分比。

- monkey --pct-syskeys percentage:设置系统按键事件的百分比。

- monkey --pct-appswitch percentage:设置应用切换事件的百分比。

- monkey --pct-anyevent percentage:设置任意事件的百分比。

monkey的用法

monkey的用法

monkey的用法Monkey是一种自动化测试工具,可用于模拟用户对应用程序进行随机化和压力测试。

使用Monkey工具,开发人员可以发现应用程序的潜在问题,如崩溃、ANR(应用程序无响应)和功能错误。

以下是关于Monkey用法的详细描述:1. Monkey的安装和设置:在使用Monkey之前,需要将Monkey工具安装在计算机中。

安装完成后,需要在系统环境变量中添加Monkey的路径。

在命令行中输入"adb shell monkey",确保正确安装。

2. Monkey命令的语法:使用Monkey工具的命令语法如下:adb shell monkey [options] <event-count>其中,options表示可选参数,event-count表示要执行的事件数量。

3. Monkey事件:Monkey工具模拟随机化事件,如触摸屏幕、按键、手势等。

可以使用以下命令定义事件类型和事件数量:-a <event-percentage>:设置触摸屏幕事件的百分比。

-s <seed>:使用指定的随机种子生成事件序列。

-v <verbosity>:设置日志输出详细程度。

4. Monkey选项:Monkey工具提供了各种选项,以便根据需求进行自定义设置,如限制事件范围、控制测试时间等。

以下是一些常用选项的示例:--pct-touch <percent>:设置触摸屏幕事件的百分比。

--pct-motion <percent>:设置移动事件的百分比。

--pct-nav <percent>:设置导航事件的百分比。

--throttle <milliseconds>:设置事件之间的间隔时间。

5. Monkey执行测试:使用Monkey工具执行测试时,可以连接设备或模拟器,并使用以下命令:adb shell monkey -p <package-name> <event-count>其中,-p选项用于指定要测试的应用程序包名,event-count表示要执行的事件数量。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Monkey操作手册
一、Monkey
a) Monkey是什么?
Monkey就是SDK中附带的一个工具。

Monkey测试是Android自动化测试的
一种手段,Monkey测试本身非常简单,当Monkey程序在模拟器或设备运行
的时候,如果用户出发了比如点击,触摸,手势或一些系统级别的事件的时候,
它就会产生随机脉冲,所以可以用Monkey用随机重复的方法去负荷测试你开
发的软件。

Monkey是Android中的一个命令行工具,可以运行在模拟器里或实际设备中。

它向系统发送伪随机的用户事件流(如按键输入、触摸屏输入、手势输入等),
实现对正在开发的应用程序进行压力测试。

Monkey测试是一种为了测试软件
的稳定性、健壮性的快速有效的方法。

b) Monkey测试的目的?
该工具用于进行压力测试。

然后开发人员结合monkey打印的日志和系统打印的日志,结合测试中出现的问题。

c) Monkey的特征
i. Monky测试使用的事件流数据流是随机的,不能进行自定义。

ii. 测试的对象仅为应用程序包,有一定的局限性。

iii. 可对Monkey的对象,事件数量,类型,频率等进行设置。

二、环境搭建
a)连接手机: 1 Android需要Root,2 (不必须)安装RE,控制data/data
挂载权限工具安装
i.JDK安装:详细:JDK安装配置
ii.SDK安装:建议拷贝SDK包,解压后配置SDK环境变量或安装详细:SDK 安装配置
至此环境安装就结束了
三、Monkey:连接真机
因为模拟器和真机的巨大差距,建议使用真机做Monke自动化测试,如果没有真机,自行安装虚拟模拟器。

a)在cmd窗口下面输入adb decixes
显示出真机连接型号。

如果未出现
连接不成功。

连接不成功,可以尝试使用豌豆荚安装手机连接,按照提示对PC和手机操作。

b)连接成功后,在cmd窗口下面输入adb shell
进入到手机
c)进入手机目录成功,在cmd窗口下面输入adb shell
没有获取到权限,使用RE修改data/data挂
载可以读写权限或者使用命令获取:
使用CD跳转至data/data,输入su
获取,再输入ls data/data获取data下目录
package
四、Monkey命令详解
a)标准的monkey 命令
[adb shell] monkey [options] <eventcount> , 例如:
adb shell monkey -v 500 --------产生500次随机事件,作用
在系统中所有activity
上面只是一个简单的例子,实际情况中通常会有很多的options
选项
b)四大类——常用选项、事件选项、约束选项、调试选

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.xiaomishu.restaurant.reservation-s 500
--ignore-crashes --ignore-timeouts --monitor-native-crashes -v -v
10000 > E:\monkey_log\ monkey_log.txt
monkey作用的包:com.xiaomishu.restaurant.reservation
a)产生时间序列的种子值:500
b)忽略程序崩溃、忽略超时、监视本地程序崩溃、详细信
息级别为2 ,产生10000个事件。

六、启动Monkey
d)在cmd窗口下面输入adb decixes
显示出真机连接型号。

如果未出现
连接不成功。

连接不成功,可以尝试使用豌豆荚安装手机连接,按照提示对PC和手机操作。

e)连接成功后,在cmd窗口下面输入adb shell
进入到手机
f)进入手机目录成功,在cmd窗口下面输入adb shell
没有获取到权限,使用RE修改data/data挂
载可以读写权限或者使用命令获取:
使用CD跳转至data/data,输入su
获取,再输入ls data/data获取data下目录
package
g)输入monkey 测试命令:
adb shell monkey -p com.xiaomishu.restaurant.reservation -s 500 --ignore-crashes --ignore-timeouts --monitor-native-crashes -v -v 10000 > E:\monkey_log\ monkey_log.txt。

相关文档
最新文档