一、分类

Monkey测试针对不同的对象,不同的目的,采用不同的测略方案。

测试类型分为:

应用程序的稳定性测试和压力测试

测试对象分为:

单个APK和多个APK集合

测试目的分为:

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

二、稳定性测试

1、针对单个APK

1)不忽略异常的测试

例如:

adb shell monkey -p com.android.browser --throdttle 1000 -s 100 -v -v -v 15000 >f:\monkey_log.txt

在进行单个APK的验收测试时,则使用单一APK且不忽略异常的使用命令执行。

2)忽略异常的测试

在进行单个APK的解决问题的测试时,则使用单一APK且忽略异常的命令执行,这样可以在一次执行的过程中发现应用程序的多个问题。

例如:

adb shell monkey -p com.android.browser --throttle 1000 -s 100 --ignore-crashes --ignore-timeouts --ignore-security-exceptions --ignore-native-carshes --monitor-native-crashes -v-v-v 15000 >f:\monkey_log.txt

2、APK集合(针对多个APK)

通过白名单对APK集合进行测试,命令:--pkg-whitelist-file

1)不忽略异常的测试

例如:

adb shell monkey -pkg-whilelist-file /data/whitelist.txt --thorttle 1000 -s 100 -v -v -v 15000 >f:\monkey_log.txt

2)忽略异常的测试

例如:

adb shell monkey -pkg-whilelist-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 >f:\monkey_log.txt

解释:

--ignore-crashes:

用于指定当应用程序崩溃时(Force& Close错误),Monkey是否停止运行。如果使用此参数,即使应用程序崩溃,Monkey依然会发送事件,直到事件计数完成。

--ignore-timeouts:

用于指定当应用程序发生ANR(Application No Responding)错误时,Monkey是否停止运行。如果使用此参数,即使应用程序发生ANR错误,Monkey依然会发送事件,直到事件计数完成。

--ignore-security-exceptions:

用于指定当应用程序发生许可错误时(如证书许可,网络许可等),Monkey是否停止运行。如果使用此参数,即使应用程序发生许可错误,Monkey依然会发送事件,直到事件计数完成。
--ignore-native-carshes:
忽略本地代码导致的崩溃
--monitor-native-crashes :
用于指定是否监视并报告应用程序发生崩溃的本地代码。
三、压力测试/健壮性测试
1、针对单个APK
主要是缩短Monkey测试中事件与事件之间的延迟时间,验证在快速的事件的响应过程中,程序是否能正常运行。
可以将--throtthle的值设定为500毫秒,或者更小,一般都使用500毫秒的延迟事件。
2、多个APK集合
进行多个APK集合测试时,对于高频率使用的APK,长时间使用的APK,都要包含在所执行的应用程序中间。
3、APK的具体分类:
高频率使用的APK:
电话(phone),联系人(contacts),短信(message),图库(Gallery),设置(settings),文件管理(file manager),输入法(input method)
长时间使用的APK:
电话(phone),浏览器(browser),音乐播放器(music player),视频录制(video player),相机(camera),邮件(email),聊天软件(chat)
其它的APK:
日历(calendar),记事本(notepad),计算器(calculator),谷歌搜索(goolge search),收音机(FM Radio)
 
参考文档:
http://www.cnblogs.com/liu-ke/p/4353930.html#undefined
注意:
1、代码的执行环境是在dos命令行中
2、有装好adb,并有启动手机模拟器,或者连接手机

monkey之三:monkey测试测略(摘抄)的更多相关文章

  1. 手把手用Monkey写一个压测脚本

    版权声明: 本账号发布文章均来自公众号,承香墨影(cxmyDev),版权归承香墨影所有. 允许有条件转载,转载请附带底部二维码. 一.为什么需要一个测试脚本? 昨天讲解了Android Monkey命 ...

  2. monkey命令行测试

    一. 什么是Monkey monkey是google提供的一个用于稳定性与压力测试的命令行工具.monkey程序由android系统自带,位于/sdcard/system/framework/monk ...

  3. monkey之monkey简介

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

  4. Monkey Patch/Monkey Testing/Duck Typing/Duck Test

    Monkey Patch Monkey Testing Duck Typing Duck Test

  5. Android Testing学习01 介绍 测试测什么 测试的类型

    Android Testing学习01 介绍 测试测什么 测试的类型 Android 测试 测什么 1.Activity的生命周期事件 应该测试Activity的生命周期事件处理. 如果你的Activ ...

  6. Visual Studio 单元测试之三---压力测试

    原文:Visual Studio 单元测试之三---压力测试 我们都知道大名鼎鼎的LoadRuner,但是很少有人知道Visual Studio自带的Test也可以做些简单的压力测试,下面我们就介绍一 ...

  7. 【Monkey】Monkey稳定性测试常用命令

    Monkey稳定性测试常用命令: 1.adb shell monkey n 2.adb shell monkey -p  com.android.calculator2 1000 3.adb shel ...

  8. Monkey进行压力测试定位问题分析

    Monkey测试的log分析,我们可以通过几个关键词来判断测试是否通过.   分析log方法一(粗糙一点): 1)Monkey finished打开LOG,查看log的最下端,是否有类似以下字段:## ...

  9. 利用Monkey进行APP测试

    APP测试策略 功能测试 安装.卸载测试 升级测试(跨版本) 数据丢失 版本兼容 业务逻辑测试 UI测试 异常测试 适配测试 软件 兼容性测试 硬件 性能测试 效率测试 启动时间 响应时间 页面流畅度 ...

随机推荐

  1. SVG中 transform矩阵遇到的兼容性问题

    SVG  transform矩阵遇到的兼容性问题.在chrome.safari.火狐.360极速浏览器上都正常显示的图,在手机端就不行啊!!! 先上图. 图1     PC端浏览器 图2   iPho ...

  2. js cookie

    cookie:cookis:储存数据,当用户访问了某个网站的时候,我们就可以通过cookie来向访问者电脑上储存数据1)不同浏览器的存放cookie位置不一样,也是不能通用的2)cookie的存储是以 ...

  3. 苹果iphone手机上input的button按钮颜色显示有问题,安卓却没问题

    苹果手机中会如类似上图,安卓却可以按自己写的来显示 解决办法: -webkit-appearance: none; 以上即可,当然样式中可以加上通用的: 通用:input[type=button], ...

  4. JSP多文件上传到服务器

    问题描述: 作为一个Java开发Web方向的程序员,很重要的一个功能,就是上传文件功能是一定要掌握的,今天整理了一下代码. 1.JSP显示界面代码和动态添加上传文件个数. <%@ page la ...

  5. 对路径的访问被拒绝,解决之后又报-未在本地计算机上注册“Microsoft.Jet.OLEDB.4.0”提供程序。

    服务器环境:Server 2008  64位系统 问题:在导入Excel题录表时报错,1对路径的访问被拒绝,2未在本地计算机上注册“Microsoft.Jet.OLEDB.4.0”提供程序. 解决方案 ...

  6. struts2 spring mybatis 整合(test)

    这几天搭了个spring+struts2+mybatis的架子,练练手,顺便熟悉熟悉struts2. 环境:myEclipse10+tomcat7+jdk1.6(1.8的jre报错,所以换成了1.6) ...

  7. Excel—分离中英文字符

    1.如下图: 2.提取中文字符为: 3.提取应为字符为: 4.说明: 该方法的原理利用了LENB和LEN计算方法的不同,LEN计算字符数,中英文都算作一个字符:LENB计算字节数,中文算两个字节,英文 ...

  8. C语言: 运算符,printf,scanf的用法

    运算符/的运算结果和运算对象的数据类型有关,两个数都是in,则商就是int,取整数部分:被除数和除数中只要有一个或两个都是浮点型数据,则商也是浮点型,不去掉小数部分如:16/5 == 3:16/5.0 ...

  9. 当前Windows群集心跳阀值设置

    一.内容描述: WINDOWS群集之间通过心跳检测(HeartBeat)各个节点是否正常在线,微软称此检测为lookalive,检测通过UDP数据包中封装的RPC信息进行传送.默认情况下为每秒检测一次 ...

  10. php SESSION跨域问题

    这段时间随着项目功能的扩展,慢慢接触到了跨域方面的知识,遇到的更多的问题也是前端与后端交互的时候跨域问题.关于js跨域的问题我会在其他分类里面写.这里记录我今天遇到的php session跨域问题 当 ...