Android APP性能测试笔记(二)

(5)FPS

 

每秒传输帧数(Frames Per Second),每秒钟帧数愈多,所显示的动作就会愈流畅,标准的fps是60

1)测试工具

 

GT

2)测试方法

 

GT操作参考:

3)例子:某电商APP的首页 (竞品分析)

第一次采集:fps在 39 - 59之间,平均值47 

第二次采集: fps在 34 - 55 之间,平均值41

以上,fps在人眼感知范围内不觉得卡顿的FPS频率大约是30以上,但是想要   达到流程度等级则需要为60

由于FPS的机制问题,单单依靠这个数据不足以说明页面一定存在掉帧,但是从上面的GPU呈现模式测试结果来看,页面是存在掉帧情况的,

建议开发使用APP源码,打开AndroidDevice Monitor工具中的UI布局分析器HierachyViewer功能对三个页面再进行检测一遍,看是否有必要进行相关优化;

注:测试使用的是真机,官网提到:出于安全考虑,Hierarchy Viewer只能连接Android开发版手机或是模拟器(准确地说,只有ro.secure参数等于0且ro.debuggable等于1的android系统)。Hierarchy Viewer在连接手机时,

 

手机上必须启动一个叫View Server的客户端与其进行socket通信。而在商业手机上,是无法开启View Server的,故Hierarchy Viewer是无法连接到普通的商业手机。(模拟器不太准确,且有些数据无法获取到)

4)优化方案

 

1、没有用的父布局时指没有背景绘制或者没有大小限制的父布局,这样的布局不会对UI效果产生任何影响。可以把没有用的父布局,通过<merge/>标签合并来减少UI的层次;

2、使用线性布局LinearLayout排版导致UI层次变深,如果有这类问题,使用相对布局RelativeLayout代替LinearLayout,减少UI的层次;

3、不常用的UI被设置成GONE,比如异常的错误页面,如果有这类问题,需要用<ViewStub/>标签,代替GONE提高UI性能。

(6)内存,CPU,流量

 

1)测试工具

 

GT

2)测试方法

 

分不同状态进行测试(3次采集,竞品分析对比)

空闲状态:打开应用后,,点击home键不退出应用,让应用后台运行20分钟

满规格:操作页面5分钟左右

中等规格:操作页面10分钟左右

3)测试数据

 

按照从小到大进行排序,取90%位置的数据作为测试的结果。

4)例子

 

空闲状态下性能数据如下图:

点击某个参数后,详细记录了数据

我们需要把数据导出文件,然后再取90%数据

adb pull/sdcard/GT/GW/com.xxx.client/6.0.0/201903011505

C:\Users\Administrator\xxx\app

CPU形成的图表,可见空闲状态下,CPU占用率90% 位置数据是38%

空闲状态下,流量较少,发送和接收流量基本在45KB以内

空闲状态下,内存使用90%的位置是94.81MB

最后,把上面测试后的数据和分析结果,汇总成性能测试报告就可以了。

猜你喜欢

转载自www.cnblogs.com/lp475177107/p/10671344.html