monkey测试基本操作文档
Android Monkey使用说明——手册
自动化测试工具Monkey1、什么是MonkeyMonkey是Android中的一个命令行工具,可以运行在模拟器里或实际设备中。
它向系统发送伪随机的用户事件流(如按键输入、触摸屏输入、手势输入等),实现对正在开发的应用程序进行压力测试。
Monkey测试是一种为了测试软件的稳定性、健壮性的快速有效的方法。
2、Monkey的特征A、测试的对象仅为应用程序包,有一定的局限性。
B、Monky测试使用的事件流数据流是随机的,不能进行自定义。
C、可对MonkeyTest的对象,事件数量,类型,频率等进行设置。
3、Monkey的基本用法$ adb shell monkey –p(包) –v(频率)5004、Monkey测试的停止条件Monkey Test执行过程中在下列三种情况下会自动停止:A、如果限定了Monkey运行在一个或几个特定的包上,那么它会监测试图转到其它包的操作,并对其进行阻止。
B、如果应用程序崩溃或接收到任何失控异常,Monkey将停止并报错。
C、如果应用程序产生了应用程序不响应(application not responding)的错误,Monkey将会停止并报错。
使用Monkey流程总的来说使用monkey进行测试是比较简单的,只是需要做一些比较复杂的准备工作。
下面详解测试步骤(很简单的哦),所讲内容是建立在已经配置好ADB环境的基础上(如果这部分不清楚请先google一下先配置好环境,这里不做描述)。
1、ADB连接Android测试设备。
2、确定你要测试的应用的PackageName。
3、使用Monkey发一条测试命令。
步骤详解步骤确实很简单吧。
不敢保证读者都明白如何去完成上面的步骤,这里讲讲每步如何做。
1、ADB连接Android测试设备。
如果你用的是模拟器,那么启动后通常是已经连在ADB上了。
对于真机来说两种方式都可以:方式一:使用USB把Android设备接到PC上,然后装上驱动(不好找驱动的话就用豌豆荚吧)。
Monkey测试入门
三、Monkey 测试流程
1、将apk安装到android模拟器中 2、使用aapt命令查看APK版本号、包名 、固件版本号
3、执行adb shell monkey [options] 该命令启动指定的应用程序,并向其发送 100个伪随机事件
Hale Waihona Puke 初识Monkey 测试结果各数字分别表示各种事件所 占的比例 如pct-touch、pct-syskeys等 Switch 表示跳转到应用包中 的Welcomeactivity
发送一些动作
初识Monkey 测试结果
该程序在测试中没 有问题,若程序出 现问题终端将打印 出异常供程序员查 找错误
测试结果出现问题了怎么办?
1、找到是monkey里面的哪个地方出错 2、 查看Monkey里面出错前的一些事件 动作,并手动执行该动作 3、 若以上步骤还不能找出,可以使用 之前执行的monkey命令再执行一遍,注 意seed值要一样
认识adb
在环境变量Path中添加adb程序所在的 路径
二、初识Monkey
Monkey是Android SDK提供的一个命 令行工具,可运行在模拟器和实体设备 上。 Monkey发送伪随机的用户事件流,可用 来做压力测试。Monkey测试是一种为了 测试软件的稳定性、健壮性的快速有效 的方法。 Monkey测试的对象仅为应用程序包,且 测试使用的事件流数据流是随机的,不 能进行自定义。
Monkey测试入门
2014年12月9日
一、认识adb
ADB是一个 客户端-服务器端 程序, 其中 客户端是你用来操作的电脑, 服务器端是 android设备。 adb的全称为(Android Debug Bridge就 是调试桥的作用。 ADB包含在sdk里,要在电脑上使用该 命令需要进行配置
monkey测试文档
Android Monkey测试Android中的monkey是对app做界面压力测试的一款工具,它可以向模拟器或者真机发送一系列随机的用户操作事件、或者系统事件。
概述Monkey是android sdk自带的一款命令行工具,适用于任何android模拟器或者真机。
它通过向手机发送一系列的随机事件,来测试手机app的稳定性。
Monkey命令包含一些参数,大体可以分为四类:∙基本参数,如指定随机事件的个数∙操作约束,如限制随机操作在指定的包内∙事件类型和频率∙调试选项Monkey运行过程中,向android系统发送随机事件。
并且,monkey会监视android 系统的运行状态,保证下面的三点:∙如果我们限制了monkey只在一个或几个包中运行。
那么monkey在运行过程中会监视产生的随机事件,如果某一事件会跳到其他包中,monkey就会丢弃该事件,确保monkey只在指定的包中运行。
∙如果我们的程序出现crash或者有未被捕获的异常,monkey就会停止运行,并报错。
∙如果我们的程序出现未响应,monkey会停止运行,并报错。
Monkey的基本用法我们可以在直接在命令行或者脚本中运行monkey,前提是android sdk环境已经ok。
基本语法如下:$ adb shell monkey [options] <event-count>如果没有其他参数限制,monkey默认以quiet模式运行,它会随机向手机中的包发送请求。
一般请求,我们都需要指定包名,下面的命令限制了包名,且指定产生500个随机事件:$ adb shell monkey -p com.yeetrack.android.client -v 500Monkey的参数下面列出了Monkey可以使用的参数。
基本参数∙--help打印帮助文档∙-v命令行中的每一个-v将增加反馈信息的级别。
Level 0(也是默认值)除启动提示、测试完成和最终结果之外,其他的信息很少。
monkey压测命令
monkey压测命令
Monkey压测命令是一种常用的压力测试工具,它可以模拟大量
的用户请求,以测试系统的性能和稳定性。
使用Monkey命令进行压
测需要进行以下步骤:
1. 安装Monkey:Monkey是一个基于Java的命令行工具,可以
通过在终端输入命令进行安装。
安装完成后,可以在终端输入“monkey”命令来检查安装是否成功。
2. 配置Monkey:在进行压测前,需要进行一些配置,包括设置测试的目标地址、请求的数量、并发数等参数。
可以通过在终端中输入“monkey --help”来查看可用的配置选项。
3. 运行Monkey:一旦完成了配置,就可以在终端中输入“monkey run”命令来启动压测。
Monkey会自动发送请求,并在测试完成后输出测试结果。
需要注意的是,在进行压测时,需要确保测试环境与真实环境尽可能相似,以避免测试结果的误差。
同时,也需要谨慎设置请求的数量和并发数,以避免对系统造成严重的影响。
- 1 -。
移动端自动化测试之--Monkey
移动端⾃动化测试之--Monkey ⽬录monkey简介monkey基本命令monkey事件monkey参数monkey⾃定义脚本⼀、monkey简介1、简介Monkey是Android SDK提供的⼀个命令⾏⼯具;它可以产⽣随机的⽤户操作事件流,并控制设备执⾏,产⽣⽇志,对app进⾏⿊盒压测;它还可以编辑脚本,⾃定义事件流,对app进⾏稳定的⾃动化测试;2、monkey路径monkey所在路径:adb shell /system/bin/monkeyjar包所在路径:adb shell /system/framework/monkey.jar⼆、monkey基本命令1、基本命令格式adb shell monkey [options] <event-count># []表⽰可选项,<>表⽰必填项# option表⽰传⼊的参数# event-count表⽰⽣成随机事件的数量2、关闭monkeyadb shell ps |findstr monkey # 找到monkey进程,查看它的pidadb shell kill pid # 通过指定的pid杀掉monkey进程三、monkey事件monkey有11⼤事件,在执⾏monkey时,通过配置对应事件的产⽣⽐例来重点测试某种事件:命令格式:adb shell monkey [options] --pct-事件 <event-count>触摸事件:touch⼿势事件:motion⼆指缩放事件:pinchzoom轨迹事件:trackball屏幕旋转事件:rotation基本导航事件:nav主要导航事件:majornav系统按键:syskeys启动activity事件:appswitch键盘事件:flip四、monkey参数1、常规类型参数1. 查看帮助:monkey –h # 查看monkey帮助2. ⽇志级别:1. monkey –v # 基本2. monkey –v –v # 详细3. monkey –v –v –v # 详尽2、事件类型参数1. 指定脚本执⾏:monkey –f <脚本位置>2. 伪随机数⽣成种⼦值(⽤于标记并复现monkey操作):1. monkey –s <seed> # 第⼀次指定标记(seed为标记数字)2. monkey –s <seed> # 第⼆次复现相同seed的操作3. 指定事件⽣成的时间间隔:monkey --throttle <毫秒数>3、约束类参数1. 包约束:-p <packageNames> # 可指定⼀个或多个包名2. activity约束:monkey –c <activityName>4、调试类参数1. 程序崩溃后继续执⾏:--ignore-crashes2. 超时后继续执⾏:--ignore-timeouts3. 发⽣异常后继续执⾏:--ignore-security-exception五、monkey⾃定义脚本1、monkey只⽀持屏幕坐标点来定位元素在设置--开发者选项--指针位置(打开),再点击屏幕就可以显⽰屏幕坐标点位置了2、常⽤的monkey APILaunchActivity(pkg_name,cl_name):启动应⽤的Activity,参数:包名和activity名Tap(x,y,tapDuration):模拟⼀次⼿指单击事件。
monkey测试标准
Monkey测试是一种通过向系统发送伪随机的用户事件流(如按键输入、触摸屏输入、手势输入等)来对应用程序客户端进行稳定性测试的方法。
其标准如下:
1.测试目的:验证APP的稳定性以及是否会在各种异常场景下出现未知的错误和异常。
2.测试方法:使用Google原生的Monkey测试框架,执行指定参数的测试,并记录运行日志和报
错日志。
3.测试指令:通过adb shell命令执行Monkey测试,并可以指定一系列参数进行更精细的测试。
例如:adb shell monkey -p 包名--pct-touch 16 --pct-motion 16 --pct-trackball 16 --pct-majornav 16 --pct-appswitch 16 --pct-nav 16 --ignore-crashes --ignore-timeouts --ignore-security-exceptions --kill-process-after-error -v -v -v --throttle 500 9999999 -s 123456。
4.判定标准:关注各种指标,如ANR、CRASH、OOM、Error、Exception、GC等,并根据实
际需求制定相应的通过标准。
此外,Monkey测试的标准可能因应用场景、设备类型和特定需求而有所不同,因此在实际应用中可能需要根据具体情况进行微调。
建议参考行业内的最佳实践或专业机构的指南来完善标准,以提供更加准确和可靠的结果。
monkey test
MonkeyTest1. 命令使用Monkey是一个命令列工具,可以运行在仿真器里或实际设备中。
它向系统发送伪随机的使用者事件流,实现对正在开发的应用程序进行压力测试。
Monkey 包括许多选项,它们大致分为四大类:基本配置选项,如设置测试的事件数量。
运行约束选项,如设置只对单独的一个包进行测试。
事件类型和频率。
调试选项。
在Monkey运行的时候,它生成事件,并把它们发给系统。
同时,Monkey还对测试中的系统进行监测,对下列三种情况进行特殊处理对下列三种情况进行特殊处理:对下列三种情况进行特殊处理如果限定了Monkey运行在一个或几个特定的包上,那么它会监测试图转到其它包的操作,并对其进行阻止。
如果应用程序崩溃或接收到任何失控异常,Monkey将停止并报错。
如果应用程序产生了应用程序不响应(application not responding)的错误,Monkey将会停止并报错。
按照选定的不同级别的回馈信息,在Monkey中还可以看到其执行过程报告和生成的事件。
类别选项--help 说明列出简单的用法。
命令列的每一个-v 将增加反馈信息的级别。
Level 0( 缺省值) 除启动提示、测试完成和最终结果之外,提供较少信息。
Level 常规-v 1 提供较为详细的测试信息,如逐个发送到Activity 的事件。
Level 2 提供更加详细的设置信息,如测试中被选中的或未被选中的Activity 。
一般,一般,一个v 就足够了伪随机数产生器的seed 值。
如果用相同的seed 值再次运行事件-s <seed>Monkey,它将生成相同的事件序列。
在事件之间插入固定延迟。
通过这个选项可以减缓Monkey的--throttle <milliseconds>执行速度。
如果不指定该选项,Monkey将不会被延迟,事件将尽可能快地被产成。
调整触摸事件的百分比(触摸事件是一个down-up 事件,它发--pct-touch <percent>生在屏幕上的某单一位置)。
Monkey 自动化测试
目录一. 简介 (2)二. 为什么要用monkey测试 (2)三. Monkey基本用法 (2)(1)基本用法 (2)(2)Monkey常用的命令组合 (2)四. Monkey输出日志等级 (3)五. Monkey命令参数 (3)(1)--help (3)(2)-v 3(3)-s <seed> (4)(4)--throttle <milliseconds> (4)(5)--pct-touch <percent> (4)(6)--pct-motion <percent> (4)(7)--pct-trackball <percent> (4)(8)--pct-nav <percent> (4)(9)--pct-majornav <percent> (4)(10)--pct-syskeys <percent> (4)(11)--pct-appswitch <percent> (4)(12)--pct-anyevent <percent> (5)(13)-p <allowed-package-name> (5)(14)-c <main-category> (5)(15)--dbg-no-events (5)(16)--hprof (5)(17)--ignore-crashes (5)(18)--ignore-timeouts (5)(19)--ignore-security-exceptions (5)(20)--kill-process-after-error (6)(21)--monitor-native-crashes (6)(22)--wait-dbg (6)六. Monkey测试方法 (6)(1)对整机进行指定时间间隔的随机事件 (6)(2)对进程进行指定时间间隔的随机事件 (6)(3)对进程进行指定时间间隔的特定事件................................. 错误!未定义书签。
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测试前的准备工作:1.准备一张存储空间足够的SD卡,以防log被写满,并拷贝一些图片,MP3,视频文件等2.设置屏幕延时为最大值(settings->Display->Screen timeout->30 minutes or never)3.打开USB调试模式,确保adb可以连接4.使用ENG版本,且移除第三方应用及GMS(Google mobile service)应用包5.执行monkey测试前,一定要确保屏幕解锁6.测试前清除历史LOG7.全程完整录制MTKLogger,并且抓取adb log8.如出现anr,需要抓取/data/anr目录9.记录发生问题的时间点(条件允许的前提下)10.测试高耗掉的模块时,请使用满电的电池进行测试(如camera/gallery,call等)11.准备一张sim卡,插入手机(在测试通话,信息,联系人等模块可能会用到)。
Monkey测试命令:1.对单独模块进行monkey测试:adb shell monkey –v -v –p 模块的包名–-throttle 500 3000002.对整机进行monkey测试:adb shell monkey -s 6516 --throttle 200 --ignore-security-exceptions -v 3000000 Monkey测试结果的判断:1.Monkey测试结果为pass的,LOG信息最后一行会有Monkey finished的字样。
2.Monkey测试结果为fail的,有以下两种情况:A.LOG的最后会有以下提示字样,表示此次monkey测试fail,提供所有log给开发。
如:** Monkey aborted due to error.Events injected: 37511:Sending rotation degree=0, persist=false:Dropped: keys=0 pointers=24 trackballs=0 flips=0 rotations=0## Network stats: elapsed time=4508008ms (0ms mobile, 0ms wifi, 4508008ms not connected)** System appears to have crashed at event 37511 of 300000 using seed 1358091994830B.LOG中无A情况中的错误信息提示,也无Monkey finished字样,但monkey 测试已中断,该问题仍定位为monkey测试fail,需要给开发提供所有的LOG,开发查找calendar_time关键字去定位问题。
monkey基本命令
monkey基本命令Monkey是一种测试工具,被广泛用于自动化测试领域。
它可以模拟用户的操作,例如点击、滑动、输入等,以测试移动应用程序的稳定性和性能。
本文将介绍Monkey的基本命令及其使用方法,帮助读者了解如何使用Monkey进行自动化测试。
Monkey是Android平台上的一种命令行工具,可以通过ADB (Android Debug Bridge)连接到设备或模拟器,并模拟用户操作。
Monkey的基本命令是"adb shell monkey",其后可以跟上一系列参数来指定测试的次数、包名、事件百分比等。
下面将详细介绍一些常用的Monkey命令。
1. 基本命令- "adb shell monkey -p -v 500":这条命令表示以包名为""的应用为测试对象,执行500个事件。
- "adb shell monkey -p -v -v -v 500":通过增加"-v"参数的数量,可以增加输出的详细程度。
2. 事件百分比Monkey的事件百分比参数可以用来指定不同类型事件的触发概率。
例如,"-pct-touch"表示触摸事件的百分比,"-pct-motion"表示滑动事件的百分比,"-pct-trackball"表示轨迹球事件的百分比,"-pct-nav"表示导航事件的百分比,"-pct-majornav"表示重要导航事件的百分比,"-pct-syskeys"表示系统按键事件的百分比,"-pct-appswitch"表示应用切换事件的百分比,"-pct-anyevent"表示任意事件的百分比。
3. 包名过滤如果只想对某个特定的应用进行测试,可以使用"-p "参数来指定应用的包名。
(完整word版)Monkey操作手册
Monkey操作手册一、Monkeya) 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 。
Android压力测试Monkey
6.Monkey测试的停止条件
(1)如果先顶了Monkey运行在一个或几个特定的包上,那么它会检测试图转到它包的操 作,并对其进行阻止; (2)如果应用程序崩溃或接收到任何失控异常,Monkey将停止并报错; (3)如果应用程序产生了应用程序不响应(application not responding)的错误, Monkey将会停止并报错。
4)创建AVD 打开SDK Manager.exe,如果域名转向设置正确,将看到管 理器的更新列表,“Status(状态)”列下显示 “Installed”的项表明数据已安装,显示“Not Uninstalled” 的项表明数据没有安装。全部更新列表中的数据会因数据 太大导致下载很长时间,本例只选择Android SDK Platform-tools 和Android 4.1 (API 16)两项数据,如图所 示
如果不指定options,Monkey将以无反馈模式启动,并把事 件任意发送到安 装在目标环境中的全部包。下面是一个 更为典型的命令行示例,它启动指定的应用程序,并向其 发送500个伪随机事件: $ adb shell monkey -p -v 500
4.Monkey参数
点击Path,将“D:\android-sdk-windows\adt-bundlewindows-x86-20131030\sdk\tools”添加到变量值中,与之 前的变量值用“;”隔开
3)下载安装JDK 下载地址: /download/jdk6/6u10/promoted/b32/bi naries/jdk-6u10-rc2-bin-b32-windows-i586-p12_sep_2008.exe 下载完成之后点击安装,默认安装就可以了
4) 参数: --throttle <毫秒> 用于指定用户操作(即事件)间的时延,单位是毫秒; * 示例:adb shell monkey -p com.htc.Weather –throttle 3000 100 5) 参数: --ignore-crashes 用于指定当应用程序崩溃时(Force & Close错误),Monkey是否停止运行。如果使用此 参数,即使应用程序崩溃,Monkey依然会发送事件,直到事件计数完成。 * 示例1:adb shell monkey -p com.htc.Weather --ignore-crashes 1000 测试过程中即使Weather程序崩溃,Monkey依然会继续发送事件直到事件数目达到1000 为止; * 示例2:adb shell monkey -p com.htc.Weather 1000 测试过程中,如果Weather程序崩溃,Monkey将会停止运行。
Monkey Test 简单介绍
1.Monkey测试基本命令1.1 Monkey基本命令:执行单一apk:monkey –p <options> -c <options> -s <seed><限制语句> --throttle<milliseconds> -v 执行次数> C:\monkey_test.txt执行apk集合:monkey –pkg-blacklist-file /data/blacklist.txt -c <options> -s <seed><限制语句> --throttle <milliseconds> -v 执行次数> C:\blacklist_test.txt //执行黑名单以外的应用或monkey –pkg-whitelist-file /data/whitelist.txt -c <options> -s <seed><限制语句> --throttle <milliseconds> -v 执行次数 > C:\whitelist_test.txt //执行白名单的应用1.2 Monkey各项参数说明:1首先是约束限制的参数:-p <包名>使用该参数制定一个包或者几个包,monkey将只允许系统启动这些包里的Activity;指定多个包,则需要使用多个-p参数,由此出现了apk集合的测试命令。
-c <main-category>用此参数指定一个或多个类别,同样,需要指定多个类别就需要多个-c参数;常见的类别有UNCHER、Intent.category.MONKEY。
2其次是调试的参数:--dbg-no-events设置此参数,monkey将执行初始启动,进入到一个测试Activity 后,不会进一步生成事件。
monkey的常用操作
"Monkey" 通常指的是"Android Monkey",它是一种用于测试Android 应用程序的工具。
以下是一些"Monkey" 的常用操作:
1. 启动"Monkey" 测试:通过命令行或者开发工具启动"Monkey" 测试。
2. 设置测试参数:可以设置如事件数量、触摸事件百分比、滑动事件百分比等参数。
3. 运行测试:启动"Monkey" 测试后,它会模拟用户操作,如点击、滑动、输入等,对应用程序进行随机测试。
4. 查看测试结果:"Monkey" 会生成测试报告,其中包含了测试过程中发生的事件、崩溃等信息。
5. 分析崩溃:如果测试过程中发生了崩溃,可以通过分析崩溃日志来定位和修复问题。
6. 重复测试:根据需要,可以重复运行"Monkey" 测试,以确保问题得到修复。
这些是"Monkey" 的一些常用操作,它可以帮助开发者发现应用程序
中的稳定性问题和兼容性问题。
在使用"Monkey" 进行测试时,需要根据实际需求合理设置测试参数,并结合其他测试方法进行综合测试。
monkey稳定性测试,常用执行命令和如何结束monkey的执行中进程
monkey稳定性测试,常⽤执⾏命令和如何结束monkey的执⾏中进程⼀、稳定性命令adb shell monkey -p 包名 -v -v -v -s 111 --throttle 2000 --randomize-throttle --pct-touch 50 --pct-motion 50 --ignore-crashes --ignore-timeouts --ignore-native-crashes --ignore-security-exceptions 1000 > D:\monkey_log.txt-p 表⽰指定被测应⽤程序-v -v -v 表⽰指定⽇志详细程度-s 表⽰执⾏的seed值运⾏同⼀个流程标记⼀样的值次数也要和上次的数值设置⼀样在执⾏命令前app两次的初始停留的页⾯也要保证⼀致--throttle 2000 --randomize-throttle 表⽰执⾏事件和执⾏事件中间,间隔时间执⾏随机时间 0-2000毫⽶=2秒可以直有--throttle 2000 表⽰事件执⾏间隔2秒可以设置为0--pct-touch 50 表⽰点击事件执⾏占⽐50%--pct-motion 50 表⽰移动,滑动事件执⾏占⽐50%--ignore-crashes 表⽰调试时便于筛选⽤于指定当应⽤程序崩溃时(Force& Close错误),Monkey是否停⽌运⾏。
如果使⽤此参数,即使应⽤程序崩溃,Monkey依然会发送事件,直到事件计数完成--ignore-timeouts (⽆响应ANR)表⽰调试时便于筛选⽤于指定当应⽤程序发⽣ANR(Application No Responding)错误时,Monkey是否停⽌运⾏。
如果使⽤此参数,即使应⽤程序发⽣ANR错误,Monkey依然会发送事件,直到事件计数完成--ignore-native-crashes (许可证书崩溃)表⽰调试时便于筛选⽤于指定当应⽤程序发⽣许可错误时(如证书许可,⽹络许可等),Monkey是否停⽌运⾏。
稳定性测试(monkey)
稳定性测试(monkey)Monkey是Android SDK提供的⼀个命令⾏⼯具,可以简单⽅便的发送伪随机的⽤户事件流,对Android APP做压⼒(稳定性)测试。
主要是为了测试app是否存在⽆响应和崩溃的情况。
⼀、环境搭建 只要按照配置Android SDK环境和环境变量即可。
⼆、Monkey的使⽤1、进⼊adb shell 环境 在windows环境中,进⼊DOS界⾯,在界⾯中,输⼊adb shell即可进⼊adb shell环境(注意:adb shell服务使⽤的5037的端⼝,如果此端⼝被其他进程占⽤时,将不能正常启动adb shell,问题处理⽅法见:)如: 表⽰adb shell启动成功,shell@****:/$中,****表⽰设备id。
$:表⽰普通⽤户;#表⽰root⽤户。
2、在adb shell环境下输⼊monkey的相应命令即可。
如:3、查看需要测试的包名 如果有root权限,可以进⼊/data/data/下使⽤ls/ls-a查看(不能使⽤ll) 如果⽆root权限,可以使⽤:pm list packages查看 (需要控制monkey执⾏的时间,可以通过设置执⾏时长/事件发送延时,计算出需要执⾏的次数。
如:想要monkey运⾏24⼩时,每100毫秒发送⼀个事件。
24*60*60*1000/100=864000(次) monkey -p *** --ignore-crashes --ignore-timeoutss --throttle 100 864000 表⽰:此次monkey将会运⾏24⼩时三、Monkey的命令参数详细说明 monkey的命令参数分为: 基础参数:-v 、-s 、-p 、--throttle等 调试选项:--ignore-crashes等 事件类型:--pct-touch等(⼀)基础参数1、最简单的monkey命令(monkey 100)表⽰:在设备上,针对整个系统发送100个伪随机事件。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Monkey测试基本操作
一.简介:
Monkey是Android中的一个命令行工具,可以运行在模拟器里或实际设备中。
它向系统发送伪随机的用户事件流(如按键输入、触摸屏输入、手势输入等),实现对正在开发的应用程序进行压力测试。
Monkey测试是一种为了测试软件的稳定性、健壮性的快速有效的方法。
二.操作步骤:
1.进入D:\eclipse(eclipse的安装路径),打开eclipse
2.点击菜单栏上面的第五个图标Opens the Android SDK and AVD Manager,如下图所示
3.弹出Android SDK and AVD Manager对话框,如下图所示
4.选中Android 2.2,点击右边的Start,启动模拟器
5.点击开始----运行---cmd,确定,打开命令行
6.在命令行中输入:adb devices查看设备连接情况
C:\Documents and Settings\Administrator>adb devices
List of devices attached
emulator-5554 device
7.在有设备连接的前提下,在命令行中输入:adb shell 进入shell界面
C:\Documents and Settings\Administrator>adb shell
#
8.输入ls查看当前文件夹下的目录,执行结果如下
C:\Documents and Settings\Administrator>adb shell
# ls
ls
config
cache
sdcard
acct
mnt
d
etc
system
sys
sbin
proc
init.rc
init.goldfish.rc
init
default.prop
data
root
dev
#
9.应用程序包都在data下,我们输入cd data进入data文件夹下,如下
# cd data
cd data
10.输入ls查看文件夹下的内容,如下所示
# ls
ls
backup
app
data
tombstones
dontpanic
misc
local
app-private
property
anr
dalvik-cache
system
lost+found
#
11.还有一个data,所有的应用程序都在这个data下,进入这个data,然后输入ls 查看
# cd data
cd data
# ls
ls
com.example.android.apis
com.android.music
com.android.providers.downloads
com.android.providers.settings
com.android.providers.contacts
uncher
com.android.spare_parts
com.android.fallback
com.android.gallery
com.android.contacts
com.android.htmlviewer
erdictionary com.android.mms
com.android.alarmclock
com.android.providers.media
com.datou.hibrowser
com.android.providers.telephony com.android.cardock
com.android.camera
com.android.protips
com.android.development
com.android.defcontainer
com.android.server.vpn
com.android.soundrecorder
com.android.calculator2
com.android.providers.applications com.android.speechrecorder
tin
com.android.customlocale
com.android.inputmethod.pinyin com.android.providers.subscribedfeeds com.android.providers.drm
com.svox.pico
com.android.sdksetup
com.android.term
com.android.phone
com.android.certinstaller
com.android.wallpaper.livepicker speed
com.android.packageinstaller android.tts
com.android.email
com.android.settings
com.googlecode.pythonforandroid com.googlecode.android_scripting com.android.quicksearchbox
jp.co.omronsoft.openwnn
#
12.找到我们需要的应用程序包:com.datou.hibrowser
13.可以直接输入monkey –p com.datou.hibrowser–v 100,也可以退出sehll,
在命令行直接输入adb shell monkey –p com.datou.hibrowser –v 100,运
行过程中,模拟器中的应用程序在不断的切换画面。
下面这句命令的意思是:启动指定的应用程序,并向其发送500个伪随机事件:
#monkey -p com.datou.hibrowser -v 500
其中-p表示对象包–v 表示事件数量
三.关于monkey测试的停止条件
Monkey Test执行过程中在下列三种情况下会自动停止:
1.如果限定了Monkey运行在一个或几个特定的包上,那么它会监测试图转到其它包的操作,并对其进行阻止。
2.如果应用程序崩溃或接收到任何失控异常,Monkey将停止并报错。
3.如果应用程序产生了应用程序不响应(application not responding)的错误,Monkey 将会停止并报错。
通过多次并且不同设定下的Monkey测试才算它是一个稳定性足够的程序。
下表中列出了Monkey命令行可用的全部选项。
Monkey -p com.yourpackage -v 500 //简单的输出测试的信息。
Monkey -p com.yourpackage -v 500 //以深度为三级输出测试信息。
Monkey -p com.yourpackage --port 端口号 -v //为测试分配一个专用的端口号,不过这个命令只能输出跳转的信息及有错误时输出信息。
Monkey -p com.yourpackage -s 数字 -v 500//为随机数的事件序列定一个值,若出现问题下次可以重复同样的系列进行排错。
Monkey -p com.yourpackage -v --throttle 3000 500//为每一次执行一次有效的事件后休眠3000毫秒。