APP的性能测试(三)

之前有介绍过关于APP做性能测试用到monkey命令,这次结合monkey命令以及DDMS工具监控APP内存、MAT工具分析内存泄漏问题。

1.首先安装要测试的APP到手机上,登录adb shell (之前详细步骤上一章有讲过,就不再讲解了,就是先进入adb环境),打开eclipse,找到DDMS,如图

DDMS工具能自动检测到电脑设备已连接上的手机或者虚拟机。

2.用随机模拟次数命令 :adb shell -p 包名 -v 次数,运行该APP ,运行过程中点击heap视图下该运行过程的update heap 按钮,然后点击Gause GC按钮,如下图所示:

上图中的?就是我要监控的APP.......

3.分析数据:

DDMS 中使用Heap视图来分析的话,基本上就查看1个数据

在Data object 中有叫Total Size的数据。具体的含义就是当前进程中Java的对象所占用的内存总量。

4.判断依据:

一般情况下我的分析是这样的:

  a.不断在手机上操作一个功能,如果该数据在不断地增加,则判定该功能模块存在内存泄露问题。

  b.如果反复操作该功能之后,有一定范围的起伏,但是又被稳定在某一个有限的范围内,则说明代码良好。

  C.如果有效内存手机,可能会出现程序被kill,但是程序被kill并不能代表程序一定有内存泄露。

5.点击Dump  Hprof File 按钮,可以把监控结果导出成后缀名为.hprof的文件,经过转换后,可用MAT工具打开分析具体的结果。

如下图:

6.进入adtsdktools目录中,可以找到一个hprof-conv.exe的文件,如下图所示

7.进入之前运行monkey命令的cmd 页面 ,用cd命令:cd  进入你的adtsdktools目录中,我的安装在D盘,直接用命令 cd D:adtsktoos进入,使用命令hprof-conv.exe  刚才保存.hprof的文件地址文件名   现在保存的文件路径文件名 ,这是一个转换过程,文件的后缀名不变,如下图所示:

如图所示这样我就把文件名为1019.hprof的文件转换成1.hprof的文件,这个转换过程是为了能用MAT工具打开,直接从DDMS工具导出的文件,直接用MAT工具是打不开的(MAT工具只能打开从Jconsole,jvisualvm导出的.hprof文件,这两个工具也是监控Java的,下次有机会再讲)。

8.用MAT(MemoryAnalyzer )工具打开刚才生成保存的1.hprof文件,可以看到APP性能测试的具体报告详情,如下图所示:

点开Details可以看到具体的问题分析,做到这个步骤,一个利用DDMS、MAT工具分析内存泄漏也就大致完成了,剩下的事情,就是把这个报告发给开发取解决问题吧......




好久没写文章了,最近负责的项目正处于测试阶段,经常加班比较忙,能抽出一点时间写文章我都佩服我自己.....

下次讲下APP兼容性测试以及其他的监控工具来协助我们做APP性能测试,这一期就到这吧。



一起学习,共同进步!



2017.11.9

By Tiger


  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值