博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Monkey测试的策略和分析
阅读量:6168 次
发布时间:2019-06-21

本文共 1545 字,大约阅读时间需要 5 分钟。

Monkey测试针对不同的对象和不同的目的采用不同的测试方案,首先测试的对象、目的及类型如下:

测试的类型分为:应用程序的稳定性测试和压力测试

测试对象分为:单一apk和apk集合

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

对于应用程序的稳定性测试有两中情况

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

而针对多个apk时,对不忽略异常,这里就直接举个列子

例如:monkey –pkg-whitelist-file /data/whitelist.txt–throttle 1000 -s 100 -v -v -v 15000 > /mnt/sdcard/monkey_test.txt &

对忽略异常的如下

例如: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、 找到是monkey里面的哪个地方出错
2、 查看Monkey里面出错前的一些事件动作,并手动执行该动作
3、 若以上步骤还不能找出,可以使用之前执行的monkey命令再执行一遍,注意seed值要一样

而一般的测试结果分析:

1、 ANR问题:在日志中搜索“ANR”
2、 崩溃问题:在日志中搜索“Exception”

对于详细分析monkey日志,将执行Monkey生成的log,从手机中导出并打开查看该log;在log的最开始都会显示Monkey执行的seed值、执行次数和测试的包名。首先我们需要查看Monkey测试中是否出现了ANR或者异常, 然后我们要分析log中的具体信息,查看log中第一个Switch,主要是查看Monkey执行的是那一个Activity,譬如下面的log中,执行的是com.tencent.smtt.SplashActivity,在下一个swtich之间的,如果出现了崩溃或其他异常,可以在该Activity中查找问题的所在。

以上希望对做的同学有帮助。

转载地址:http://yfnba.baihongyu.com/

你可能感兴趣的文章
利用shell脚本自动获取awr报表
查看>>
分块算法
查看>>
zabbix3.2 报错 Database error
查看>>
中控考勤仪IFace302多线程操作时无法订阅事件
查看>>
C++ 函数适配器
查看>>
两根筷子好吃饭
查看>>
Android 中 java 与 webview 的交互
查看>>
undefined reference to
查看>>
用户在notes和shmail禁用离开办公室后,为何离开办公室代理依然运行
查看>>
读<<CLR via C#>>总结(1) dotNet平台下源代码是如何生成应用程序的
查看>>
關于設計
查看>>
Zenwalk Linux 7.2 "Live" 发布
查看>>
愿为双鸿鹄,奋翅起高飞
查看>>
[詹兴致矩阵论习题参考解答]习题7.3
查看>>
Delphi 读取CPU Id
查看>>
Python的可变对象与不可变对象。
查看>>
并列句分析
查看>>
springMVC-配置Bean
查看>>
配置当前用户使用豆瓣pip源
查看>>
git基本操作
查看>>