搜档网
当前位置:搜档网 › Monkey自动化测试

Monkey自动化测试

Monkey自动化测试
Monkey自动化测试

1.测试策略

类型:稳定性测试和压力测试

测试对象:单一APK和APK集合

目的:解决问题的测试(忽略异常的测试)和验收测试(不忽略异常的测试)

稳定性测试:

1>、针对单个APK

1.不忽略异常:在进行单个APK 的验收测试时,则使用单

一APK且不忽略异常的命令执行。

例如:monkey–p com.android.mms--throttle 1000 –s 100 –v –v –v 15000 > /mnt/sdcard/monkey_test.txt&

2.忽略异常:在进行单个APK的解决问题的测试时,则使用

单一APK且忽略异常的命令执行,这样可以在一次执行的

过程中发现应用程序的多个问题。

例如:monkey –p com.android.mms--throttle 1000 –s 100--ignore-crashes --ignore-timeouts --ignore-security-exceptions --ignore-native-crashes --monitor-native-crashes –v –v –v 15000

2>针对多个APK

1.不忽略异常:例如:monkey

–pkg-whitelist-file/data/whiltelist.txt --throttle 1000 –s

100 –v –v –v 1500 > /mnt/sdcard/monkey_test.txt&

2.忽略异常:例如:monkey --pkg-whitelist-file

/data/whitelist.txt--throttle 1000 -s 100 --ignore-crashes

--ignore-timeouts--ignore-security-exceptions

--ignore-native-carshes --monitor-native-crashes-v -v -v

15000 > /mnt/sdcard/monkey_test.txt &

压力/健壮性测试

应用程序的压力/健壮性测试,其主要是缩短monkey 测试中事件与事件之间的延迟时间,验证在快速的事件响应的过程中,程序是否能正常运行。这种压力/健壮性测试主要是针对单一apk来执行;我们可以将--throttle的值设定为500或者更小,一般都使用500毫秒的延迟事件。

在进行apk的集合测试时,对于高频率使用的apk、长时间使用的apk都要包含在执行的应用程序中间。

APK分类具体:

高频率使用的apk如:Phone、Contacts、Message、Settings、File Manager、Gallery、Input Method

长时间使用的apk如:Phone、Browser、Music player、Camera、Video player、Email、Chat

其他的apk如:Calendar、Notepad、Calculator、FM Radio、

Google Search

Monkey测试方法总结

monkey测试方法总结 测试策略:全模块、单模块 测试步骤: 1、测试前准备: 1.PC侧安装adb驱动,使用adb shell命令不报错 2.手机设置:锁屏方式设置为无,屏幕亮度建议设成最低(防止电量消耗过大导致关机) 3.手机为刚刷的新版本或者进行一次恢复出厂设置 备注:或测试前请先删除自行安装的第三方:手机助手、测试工具apk等等 4.休眠设成最长时间或不休眠 5.设置-开发者选项中勾选不锁定屏幕 6.设置手机时间为当前正确时间 7.若要测试上网请连接可用wifi或打开数据业务 8.测试前需开启aplog*#*#201206#*#* 备注:测试前请确保日志功能开启,测试完成后先保存日志 adb root adb remount adb shell rm -rf /data/logs/* 作用就是删除以前的旧log 工具使用前请确定手机版本为debug版本,PC 的adb命令使用正常 附件解压到任意目录,双击InstalllogClient.bat会自动安装logClient客户端并重

启 手机配置: 1. 连接热点360WiFi-6CDC31,连接密码为xdjatest 2. 输入密码后勾选下面的高级选项-》将DHCP选项改为静态-》设置IP地址为11.12.112.196至199之间的IP,设置完IP直接点击连接,连接上热点后即配置完毕 2、测试执行: 先执行命令adb shell 再输入如下的命令: 全模块: monkey--throttle500--ignore-crashes--ignore-timeouts--ignore-security-exc eptions--ignore-native-crashes--monitor-native-crashes-v-v-v180000>/st orage/sdcard0/monkey_log.txt& 单模块: monkey-p.xdja.ncser--throttle500--ignore-crashes--ignore-timeouts--ign ore-security-exceptions--ignore-native-crashes--monitor-native-crashes-v-v-v180000>/storage/sdcard0/monkey_log.txt& 备注: 1、单模块命令加:-p模块包名; 2、测试9小时使用180000,测试18小时使用375000

移动APP测试之Monkey Test 运用

移动APP测试之Monkey Test 运用 Monkey是Android平台自动化测试的一种手段,可以在模拟器里或实际设备中运行,它向系统发送伪随机的用户事件流,如按键输入、触摸屏输入、手势输入等,实现对正在开发的应用程序进行压力测试。 当然对于移动APP测试,monkey测试出了压力测试外,也可以做做简单的机型配适,就是测试App是否会出现crash等异常,以此来判读其释放与机型适配,可以发现程序无响应问题和崩溃问题。 接下来简单说说: Monkey程序由Android系统自带,使用Java语言写成,在Android文件系统中的存放路径是:/system/framework/monkey.jar; Monkey.jar程序是由一个名为“monkey”的Shell脚本来启动执行,shell脚本在Android文件系统中的存放路径是:/system/bin/monkey; 特征 1、测试的对象仅为应用程序包,有一定的局限性。 2、Monky测试使用的事件流数据流是随机的,不能进行自定义。 3、可对MonkeyTest的对象,事件数量,类型,频率等进行设置。 这样就可以通过在CMD窗口中执行: adb shell monkey {+命令参数}来进行Monkey测试了。 基本使用 1. 进入monkey 命令:adb shell/system/bin/monkey 2. 运行monkey 命令:adb shell monkey 是指随机发送事件数 adb shell monkey 100,运行monkey并执行了100件随机事件。 3. monkey常规类命令 adb shell monkey -h 显示monkey参数帮助信息usage adb shell monkey -v 打印出日志信息,每个-v将增加反馈信息的级别,最多支持3个-v 4. monkey事件类命令

monkey测试指南

Monkey 测试指南 前言 Monkey。顾名思义就是像只活泼的猴子,乱按乱跳乱来。术语上来讲,就是产生各种各样的随机事件来对软件进行测试。其优点缺点都是不可控性。好处是脱离测试的习惯框架,多次的组合测试可以暴露出不少隐性的问题(就是把程序搞崩溃,哈哈);缺点则是无法得出具体的缺陷在哪,重现步骤如何等等的具体问题,往往我们得就是崩溃跟超时。 测试目的 检测该软件的稳定性、健壮性。它的原理是向系统发送伪随机的用户事件流(如按键输入、触摸输入、手势输入等),实现对正在开发的应用程序进行压力测试。 测试格式 基本语法如下: $ adb shell monkey [options] 如果不指定options,Monkey将以无反馈模式启动,并把事件任意发送到安装在目标环境中的全部包。下面是一个更为典型的命令行示例,它启动指定的应用程序,并向其发送1000个伪随机事件: $ adb shell monkey -p https://www.sodocs.net/doc/154116457.html, -v number $ monkey -p(package的意思)指定文件名-v(测试的次数和频率)number(次数)测试流程 通过简单的测试示例,初步了解并掌握Monkey测试的步骤。注意,这里主要是使用adb命令进行安装和相关操作。测试的具体参考步骤如下: (1)首先,先准备了一个测试用的应用程序(apk文件)。为了测试,这里选择了云菜单 下载好后,得到下图所示的apk文件。 (2)将apk文件复制到android sdk对应platform-tools的目录下。例如,笔者的sdk路径为

D:\adt-bundle-windows-x86-20131030\sdk\platform-tools。如图所示 (3)进行apk文件的安装(安装的前提是,已经启动并可以检测模拟器):有安装91助手或者豌豆的用户可以直接双击apk文件进行安装;也可以使用android下的adb命令进行安装(如下图所示,Success表示安装成功)。adb命令下安装apk文件的命令为:adb install 文件名.apk。 (4)安装好后,会在模拟器上看到应用程序的启动图标 (5)安装好apk文件后,需要知道应用程序主Activity(第一个启动的Activity)所在的包名。这时,我们可以使用adb shell命令查找到程序主Activity所在的包名,如下图所示。(知道了apk的包名,我们也可以利用adb命令进行应用程序的卸载;卸载apk文件的命令为:

monkeyRunner教程

Android自动测试之monkeyrunner工具 monkeyrunner工具 前言: 最近开始研究Android自动化测试方法,对其中的一些工具、方法和框架做了一些简单的整理,其中包括android测试框架、CTS、Monkey、Monkeyrunner、benchmark、其它test tool 等等。因接触时间很短,很多地方有不足之处,希望能和大家多多交流。 一、什么是monkeyrunner monkeyrunner工具提供了一个API,使用此API写出的程序可以在Android代码之外控制Android设备和模拟器。通过monkeyrunner,您可以写出一个Python程序去安装一个Android应用程序或测试包,运行它,向它发送模拟击键,截取它的用户界面图片,并将截图存储于工作站上。monkeyrunner工具的主要设计目的是用于测试功能/框架水平上的应用程序和设备,或用于运行单元测试套件,但您当然也可以将其用于其它目的。 二、monkeyrunner工具同Monkey工具的差别 Monkey: Monkey工具直接运行在设备或模拟器的adb shell中,生成用户或系统的伪随机事件流。monkeyrunner: monkeyrunner工具则是在工作站上通过API定义的特定命令和事件控制设备或模拟器。 三、monkeyrunner的测试类型 1、多设备控制:monkeyrunner API可以跨多个设备或模拟器实施测试套件。您可以在同一时间接上所有的设备或一次启动全部模拟器(或统统一起),依据程序依次连接到每一个,然后运行一个或多个测试。您也可以用程序启动一个配置好的模拟器,运行一个或多个测试,然后关闭模拟器。 2、功能测试:monkeyrunner可以为一个应用自动贯彻一次功能测试。您提供按键或触摸事件的输入数值,然后观察输出结果的截屏。 3、回归测试:monkeyrunner可以运行某个应用,并将其结果截屏与既定已知正确的结果截屏相比较,以此测试应用的稳定性。

Android平台Monkey测试标准

Android 平台及整机测试测试标准要求大纲(初稿)一、Android系统测试 平台Monkey测试标准 1)系统稳定性测试 2.StabilityTest系统测试 主要对对CPU、CPU+GPU、内存运行灯作稳定性测试,测试过程中不发生任何异常和报错为通过,测试时间>5小时,至少测试10次,样机>5台。

4.WDT等保护机制测试 详细看研发保护机制方案 二、整机测试 测试整机发热及散热情况、监控CPU等主要芯片工作时温度情况 3.整机跑分测试 CPU、GPU、内存等用不同跑分软件测试,要求至少使用主流的三款以上跑分软件分别测试整机性能,并与目前已有的对手整机(同解决方案)进行对比,要求同一配置下整机跑分不低于对手同级别设备; 4.整机压力挂机测试 全功能开启,加载大应用情况下,挂机一周,中间无异常情况,而MTBF暂无测试方法5.环境及电气参数测试(高低温测试要求达标标准按照此前需求文档,但不能低于此文档要求) 硬件环境测试 1)依据标准 GB 191-2000 包装储运图示标志 GB 1002-1996 家用和类似用途单相插座形式尺寸 GB 家用和类似用途插头插座第一部分:通用要求 GB/T 2421-1999 电工电子产品环境试验第一部分:总则 GB/T 2422—1995 电工电子产品环境试验术语 GB/T —2001 电工电子产品环境试验规程试验A:低温试验方法 GB/T —2001 电工电子产品环境试验规程试验B:高温试验方法 GB/T —1993 电工电子产品环境试验规程试验Ca:恒定湿热试验方法 GB/T 计数抽样检验程序第1部分:按接收质量限(AQL)检索 的逐批检验抽样计划 GB/T 包装件基本试验温湿度调节处理 GB/T 包装件基本试验跌落试验方法

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个随机事件。 * 要查看设备中所有的包,在CMD窗口中执行以下命令: >adb shell #cd data/data #ls 2) 参数: -v 用于指定反馈信息级别(信息级别就是日志的详细程度),总共分3个级别,分别对应的参数如下表所示: 日志级别Level 0 示例adb shell monkey -p com.htc.Weather –v 100 说明缺省值,仅提供启动提示、测试完成和最终结果等少量信息 日志级别Level 1 示例adb shell monkey -p com.htc.Weather –v -v 100 说明提供较为详细的日志,包括每个发送到Activity的事件信息

(完整word版)Monkey操作手册

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 显示出真机连接型号。 如果未出现

Android测试命令行工具Monkey使用教程

Monkey是什么 Monkey是可以运行在模拟器里或实际设备中的程序。它向系统发送伪随机的用户事件流(如按键输入、触摸屏输入、手势输入等),实现对正在开发的应用程序进行压力测试。 Monkey简介 Monkey是一个命令行工具,可以运行在模拟器里或实际设备中。它向系统发送伪随机的用户事件流,实现对正在开发的应用程序进行压力测试。Monkey包括许多选项,它们大致分为四大类: ·基本配置选项,如设置尝试的事件数量。 ·运行约束选项,如设置只对单独的一个包进行测试。 ·事件类型和频率。 ·调试选项。 在Monkey运行的时候,它生成事件,并把它们发给系统。同时,Monkey 还对测试中的系统进行监测,对下列三种情况进行特殊处理: ·如果限定了Monkey运行在一个或几个特定的包上,那么它会监测试图转到其它包的操作,并对其进行阻止。 ·如果应用程序崩溃或接收到任何失控异常,Monkey将停止并报错。 ·如果应用程序产生了应用程序不响应(application not responding)的错误,Monkey将会停止并报错。 按照选定的不同级别的反馈信息,在Monkey中还可以看到其执行过程报告和生成的事件。 Monkey的基本用法 可以通过开发机器上的命令行或脚本来启动Monkey。由于Monkey运行在模拟器/设备环境中,所以必须用其环境中的shell来进行启动。可以通过在每条命令前加上adb shell来达到目的,也可以进入Shell后直接输入Monkey命令。基本语法如下:$ adb shell monkey [options] 如果不指定options,Monkey将以无反馈模式启动,并把事件任意发送到安装在目标环境中的全部包。下面是一个更为典型的命令行示例,它启动指定的应用程序,并向其发送500个伪随机事件:$ adb shell monkey -p https://www.sodocs.net/doc/154116457.html, -v 500 命令选项参考

Monkey测试简介

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个随机事件。 * 要查看设备中所有的包,在CMD窗口中执行以下命令: >adb shell #cd data/data #ls 2) 参数: -v 用于指定反馈信息级别(信息级别就是日志的详细程度),总共分3个级别,分别对应的参数如下表所示:

monkeyrunner测试

android自动化测试框架:CTS、monkey、monkeyrunner、benchmark monkeyrunner monkeyrunner工具提供了一个API,运用该API编写的程序可以不用通过android代码来直接控制android设备和模拟器,我们可以写一个python程序对android应用程序或测试包进行安装、运行、发送模拟击键,对用户界面进行截图并将截图存储在workstation上等操作。monkeyrunner工具的主要设计目的是用于测试application/framework层上的应用程序和设备、或用于运行单元测试套件,也可以用于其它目的。 monkey工具,是直接运行在设备或模拟器的adb shell中,生成用户或系统的伪随机事件流。 monkeyrunner为android测试提供了以下独特的功能: 1、多设备控制:monkeyrunner API可以跨多个设备或模拟器实施测试套件。可以在同一时间接上所有设备或一次启动全部模拟器,依据程序依次连接到每一个,然后运行一个或多个测试。也可以用程序启动一个配置好的模拟器,运行一个或多个测试,然后关闭模拟器。 2、功能测试:monkeyrunner可以为一个应用自动贯彻一次功能测试。您提供按键或触摸事件的输入数值,然后观察输出结果的截屏。

4、回归测试:monkeyrunner可以运行某个应用,并将其结果截屏与既定已知正确的结果截屏相比较,以此测试应用的稳定性。 4、可扩展的自动化:由于monkeyrunner是一个API工具包,我们可以开发基于python模块和程式的一整套系统,以此来控制android设备。除了使用monkeyrunner API,我们还可以使用标准的python os和ubprocess模块来调用android debug bridge 这样的android工具。如ADB这样的android工具,也可以将自己写的类添加到monkeyrunner API中。 运行monkeyrunner 可以直接使用一个代码文件运行monkeyrunner,抑或在交互式对话中输入monkeyrunner语句。不论使用哪种方式,你都需要调用SDK目录的tools子目录下的monkeyrunner命令。如果提供一个文件名作为运行参数,则monkeyrunner将视文件内容为python程序,并加以运行;否则,它将提供一个交互对话环境。 monkeyrunner命令语法 monkeyrunner -plugin monkeyrunner API 主要包括三个模块 1、MonkeyRunner:这个类提供了用于连接monkeyrunner和设备

andriod自动化压力测试--monkey工具

有时候我们需要对一个软件进行压力测试,检查该软件的性能。如果是人工进行测试的话,效率会低很多,而且会比较枯燥。这时,Android 中的一个命令行工具Monkey就可以为我们减轻很多重复而又繁琐的工作。 一、Monkey简介 至于Monkey的名字是有何而来的呢?这个没有去怎么考究,Monkey这个工具就是一个调皮的猴子,在App中乱按、乱摸、乱滚、乱跳。Monkey测试是Android平台下自动化测试的一种快速有效的手段,通过Monkey工具可以模拟用户触摸屏幕、滑动轨迹球、按键等操作来对模拟器或者手机设备上的软件进行压力测试,检测该软件的稳定性、健壮性。它的原理是向系统发送伪随机的用户事件流(如按键输入、触摸输入、手势输入等),实现对正在开发的应用程序进行压力测试。 二、Monkey的特性 (1)测试的对象仅为应用程序包(apk包),有一定的局限性; (2)Monkey测试使用的事件流数据流是随机的,不能进行自定义; (3)可对MonkeyTest的对象、事件数量、类型、频率等进行设置。 虽然Monkey工具并不完善,但是足于应付应用程序的基本测试需要了。如果需要功能更强大的测试工具的话,可以使用Monkey的进化版MonkeyRunner。如果把Monkey看作是幼儿园的小孩,那么它的进化版MonkeyRunner就可以看作是一个初中生了。它支持自定义插件,控制事件,随时截图,简而言之,任何你在模拟器/设备中能干的事

情,MonkeyRunner都能干,而且还可以记录和回放。在这里,就不详细介绍MonkeyRunner了,具体可以参考其官方文档或者其他相关资料。 注:MonkeyRunner官方文档的网址 https://www.sodocs.net/doc/154116457.html,/guide/developing/tools/monkeyrunner_c oncepts.html 三、Monkey的基本用法 基本语法如下: $ adb shell monkey [options] 如果不指定options,Monkey将以无反馈模式启动,并把事件任意发送到安装在目标环境中的全部包。下面是一个更为典型的命令行示例,它启动指定的应用程序,并向其发送1000个伪随机事件:$ adb shell monkey -p https://www.sodocs.net/doc/154116457.html, -v number $ monkey -p(package的意思)指定文件名-v(测试的次数和频率)number(次数) 四、Monkey测试示例图解 通过简单的测试示例,初步了解并掌握Monkey测试的步骤。注意,这里主要是使用adb命令进行安装和相关操作。测试的具体参考步骤如下: (1)首先,先准备了一个测试用的应用程序(apk文件)。为了测试,这里选择了一个格瓦拉手机购票App进行测试。下载地址为: https://www.sodocs.net/doc/154116457.html,/mobile/mobileMovie.xhtml。 下载好后,得到下图所示的apk文件。

Monkey测试详解

一、什么是Monkey Monkey是Android SDK提供的一个命令行工具,可以运行在任何版本的模拟器里或实际设备中。它向系统发送伪随机的用户事件流(如按键输入、触摸屏输入、手势输入等),实现对正在开发的应用程序进行压力测试。Monkey测试是一种为了测试软件的稳定性、健壮性的快速有效的方法,检测程序多久的时间会发生异常。 二、Monkey的特征 1、测试的对象仅为应用程序包,有一定的局限性。 2、Monky测试使用的事件流数据流是随机的,不能进行自定义。 3、可对MonkeyTest的对象,事件数量,类型,频率等进行设置。 三、在Monkey运行的时候,它生成事件,并把它们发给系统。同时,Monkey 还对测试中的系统进行监测,对下列三种情况进行特殊处理: ·如果限定了Monkey运行在一个或几个特定的包上,那么它会监测试图转到其它包的操作,并对其进行阻止。 ·如果应用程序崩溃或接收到任何失控异常,Monkey将停止并报错。 ·如果应用程序产生了应用程序不响应(application not responding)的错误,Monkey将会停止并报错。 按照选定的不同级别的反馈信息,在Monkey中还可以看到其执行过程报告和生成的事件。 四、Monkey使用流程 总的来说使用monkey进行测试是比较简单的,只是需要做一些比较复杂的准备工作。下面详解测试步骤(很简单的哦),所讲内容是建立在已经配置好ADB环境的基础上(如果这部分不清楚请先google一下先配置好环境,这里不做描述)。 1、ADB连接Android测试设备。 2、确定你要测试的应用的PackageName。 3、使用Monkey发一条测试命令。 步骤详解 步骤确实很简单吧。不敢保证读者都明白如何去完成上面的步骤,这里讲讲每步如何做。

monkey压力测试工具使用入门

安卓Monkey工具 对于安卓app,可以使用Monkey[MON01]工具,它是安卓软件开发工具包(SDK)。Monkey 工具在物理设备或仿真器上都可以运行。运行时它生成虚拟随机的用户事件比如触摸,点击,旋转,重击,减低音量,关闭网络连接等对app进行压力测试,看看app是如何处理所有这些输入和中断的。你需要安卓apk文件的安装包名来执行Monkey工具,不然该工具就会针对整个手机执行其的随机命令而不是只对被测APP了。有了app代码,就可以在AndroidManifest.xml中找到安装包名。如果只有编译的apk文件,移动测试员可以使用Android Asset 打包工具 [AAP02] (AAPT),从app上获得安装包名。AAPT位于安装好的Android SDK的build-tools文件夹中。AAPT的路径如下: 用下面的命令,可以从apk文件中读出安装包名。 输入就会如下所示: 如果有了安装包名(本例中是com.myApp),就用adb (Android Debug Bridge) [ADB03]执行Monkey。下列命令将开始Monkey: 2000年表明了Monkey将在app上执行的随机命令的数量。有一个额外的参数, Monkey 将再次生成相同序列的事件。这对Monkey执行期间再现一个bug真的很重要。 UI AutoMonkey 对于iOS app来说,还可以使用一个类似的工具——UI AutoMonkey [UIA04]。UI AutoMonkey也能生成多个命令来对iOS app进行压力测试。要使用UI AutoMonkey,UIAutomation工具模板就要配置Xcode。配置好了之后,需要写一个JavaScript文件讲明压力测试期间需要执行多少以及哪些命令。

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] 如果不指定options,Monkey将以无反馈模式启动,并把事件任意发送到安装在目标环境中的全部包 如:adb shell monkey -p https://www.sodocs.net/doc/154116457.html, -v 500 -p 指定测试程序包名

【Android Monkey自动测试工具使用报告】

关于Android Monkey自动化测试的报告 1自动化测试背景 软件测试是软件产品开发过程中的重要环节。测试对于发现软件中缺陷,保障软件的质量具有重要意义。统计表明,软件测试的时间通常占到软件开发时间的40%,一些可靠性要求高的软件甚至高达60%以上。 手工测试和自动化测试是软件测试的两种基本手段,二者相互补充,不可相互替代。其中,自动化测试能捕捉到资源冲突、多线程、死锁等手工测试难以发现的错误,可以高效的完成大量机械性、重复性测试,能模拟大量数据或大量并发用户等应用场景,从而有效的缩短软件测试周期,提高测试的可靠性及准确度。 2什么是Monkey Monkey测试是Android自动化测试的手段之一,它通过模拟用户的按键输入、触摸屏输入等,测试设备多长时间出现异常。Monkey是一个命令行工具,可以运行在模拟器或实际设备中,通过向系统发送伪随机的用户事件流,实现对全系统或某个应用程序进行压力测试。 Monkey工具使用非常简单,直接在命令窗口键入monkey命令即可进行测试。Monkey命令有较多的配置选项,为便于理解这些命令,此处先将其命令选项简单划分为四大类,在后文中陆续介绍各种命令选项的使用,然后在附录中附上整个monkey命令选项便于查阅。Monkey命令可简单分为如下四类: 基本配置选项,如设置尝试的事件数量 运行约束选项,如设置只对单独的一个包进行测试 事件类型和频率,如设置触摸屏事件的发生频率 调试选项,如设置忽略应用程序异常,继续向系统发送事件,直到计数完成 3使用monkey进行自动化测试 Monkey命令工具可以在模拟器和实际设备上使用。这里分别对两种环境下的monkey测试进行介绍。 3.1 在模拟器上运用Monkey进行自动化测试 3.1.1 monkey命令最简单用法 首先,介绍最简单monkey命令用法,其使用格式为如下: monkey n 其中,n为一个整数,表示用于测试的伪随机事件发生的次数。 如图3.1所示,启动模拟器。然后,在命令行窗口下输入adb shell命令,如图3.2所示。登录shell之后,即可使用monkey命令。最简单的用法是,直接在其后面指定一个数字,表示向系统发送事件的数量,如图3.3所示。模拟器的测试的结果如图3.4所示。

monkey测试基本操作文档

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

Android自动测试中的monkey工具使用方法

Android自动测试中的monkey工具使用方法 今天在公司使用Monkey Test这个工具进行android的自动化测试,感觉很不错,大家可以试试啊 以下是从网上看到的相关介绍,大家一起学习学习 简介 Monkey是一个命令行工具,可以运行在模拟器里或实际设备中。它向系统发送伪随机的用户事件流,实现对正在开发的应用程序进行压力测试。Monkey包括许多选项,它们大致分为四大类: ·基本配置选项,如设置尝试的事件数量。 ·运行约束选项,如设置只对单独的一个包进行测试。 ·事件类型和频率。 ·调试选项。 在Monkey运行的时候,它生成事件,并把它们发给系统。同时,Monkey还对测试中的系统进行监测,对下列三种情况进行特殊处理: ·如果限定了Monkey运行在一个或几个特定的包上,那么它会监测试图转到其它包的操作,并对其进行阻止。 ·如果应用程序崩溃或接收到任何失控异常,Monkey将停止并报错。 ·如果应用程序产生了应用程序不响应(application not responding)的错误,Monkey将会停止并报错。 按照选定的不同级别的反馈信息,在Monkey中还可以看到其执行过程报告和生成的事件。 Monkey基本用法 可以通过开发机器上的命令行或脚本来启动Monkey。由于Monkey运行在模拟器/设备环境中,所以必须用其环境中的shell来进行启动。可以通过在每条命令前加上adb shell来达到目的,也可以进入Shell后直接输入Monkey命令。基本语法如下: $ adb shell monkey [options]

如果不指定options,Monkey将以无反馈模式启动,并把事件任意发送到安装在目标环境中的全部包。下面是一个更为典型的命令行示例,它启动指定的应用程序,并向其发送500个伪随机事件: $ adb shell monkey -p https://www.sodocs.net/doc/154116457.html, -v 500 命令选项参考 下表中列出了Monkey命令行可用的全部选项。 类别 选项 说明 常规 --help 列出简单的用法。 -v 命令行的每一个-v将增加反馈信息的级别。Level 0(缺省值)除启动提示、测试完成和最终结果之外,提供较少信息。Level 1提供较为详细的测试信息,如逐个发送到Activity的事件。Level 2提供更加详细的设置信息,如测试中被选中的或未被选中的Activity。 事件 -s 伪随机数生成器的seed值。如果用相同的seed值再次运行Monkey,它将生成相同的事件序列。 --throttle 在事件之间插入固定延迟。通过这个选项可以减缓Monkey的执行速度。如果不指定该选项,Monkey将不会被延迟,事件将尽可能快地被产成。 --pct-touch 调整触摸事件的百分比(触摸事件是一个down-up事件,它发生在屏幕上的某单一位置)。 --pct-motion 调整动作事件的百分比(动作事件由屏幕上某处的一个down事件、一系列的伪随机事件和一个up事件组成)。 --pct-trackball 调整轨迹事件的百分比(轨迹事件由一个或几个随机的移动组成,有时还伴随有点击)。

介绍5种Android自动化测试工具

作为一名软件研发者,对于Android你肯定不会陌生。随着科技的日新月异,Android 在我们的生活中已经变得无处不在,手机就是一个最好的例子,我们现在常常都会用到手机。但是你知道Android自动化测试的工具有哪几种吗?小编现在就一一为你讲解。 随着科技的发展,现在已经有很多的Android自动化测试架构或工具可以供我们使用了,其中包括:ActivityInstrumentation,DroidPilot,MonkeyRunner,Robotium,以及Robolectric。另外LessPainful也提供了服务来进行真实设备上的自动化测试。 其实,Android自身就已经提供了对instrumentation测试的基本支持,其中之一就是位于Android.test包内的ActivityInstrumentationTestCase2类,它扩展了JUnit的TestCase类用来提供Androidactivities的功能测试。在应用测试中,每一个Activity首先都会被Instrumentation初始化,然后再加载到Android模拟器或设备的Dalvik虚拟机中来执行。 1.DroidPilot:一个新出android自动化测试工具 DroidPilot是一个自动化测试工具。它可以针对于Android平台的应用程序进行测试 脚本编辑、自动回放、结果检查、报告输出等操作,以此来缩短回归测试的时间和提升项目整体进度。测试的脚本不仅可以运行于模拟器,更可以同时运行于多台移动设备,这样更能凸显测试结果的真实性和可比性。 2.MonkeyRunner:AndroidSDK自带一个测试工具 MonkeyRunner提供的API和执行环境可以运行Python语言编写的测试代码。它提供了API来连接设备,安装、卸载应用,运行应用,截屏,比对图片来判断特定命令执行后的屏幕是否包含预期信息,以及运行对应用的测试。MonkeyRunner使用ActivityInstrumentationTestCase2,ProviderTestCase, ServiceTestCasek,SingleLaunchActivityTestCase及其他类来定义测试用例,并使用InstrumentationTestRunner类来运行测试。 3.Robotium:被称之为针对Android应用的又一个Selenium Robotium是另一种通过InstrumentationTestRunner来完成Android交互式测试的架构,它可以横跨多个activities,并且支持功能测试,系统测试和接收测试。Robotium支持Activities、Dialogs、Toasts、Menus、ContextMenus甚至Honeycomb,并且它可以同Maven和Ant集成来完成持续集成测试。 4.Robolectric:Pivotal实验室声称使用Robolectric可以在28秒内运行1047个测 试 Robolectric另辟蹊径,它并不依赖于Android提供的测试功能,它使用了shadowobjects并且运行测试于普通的工作站、服务器JVM,不像模拟器或设备需要 dexing(Androiddex编译器将类文件编译成Android设备上的DalvikVM使用的格式),打包,部署和运行的过程,大大减少了测试执行的时间。

MonkeyRunner(猴子测试步骤)

首先把安卓SDK的环境变量给配置好,这里就不再多解释,自己google 然后将自己的安卓设备打开调试模式,USB连接至电脑,运行CMD,输入命令adb devices 查看你的安卓设备的ID(ID后面写程序会调用),如下图所示: 继续在这个命令提示框中输入 monkeyrunner,进入monkeyrunner的shell命令交互模式。如图: 进入shell命令交互模式后,首要一件事就是导入monkeyrunner所要使用的模块。直接在 shell命令下输入: from com.android.monkeyrunner import MonkeyRunner,MonkeyDevice回车

这2步完成就可以就行monkeyrunner的测试了。 下面的一个例子是连接手机并且点击菜单按钮,之后截图保存(注:以下命令全部在CMD monkeyrunner环境下运行) 第一: # 连接安卓设备,其中4d007e9a1b0050d1 是设备的ID 上面有提到通过abd devices 获得 device = MonkeyRunner.waitForConnection(5,'4d007e9a1b0050d1') 第二: #安装apk文件到这个设备 device.installPackage('E:\Education - 136_8080.apk') 安装成功以后会返回true 第三: # sets a variable with the package's internal name(设置包名) package = 'https://www.sodocs.net/doc/154116457.html,cation'

相关主题