大数跨境

Android APP性能测试笔记(二)

Android APP性能测试笔记(二) 慧测
2019-04-01
2
导读:Android APP性能测试笔记(二)

上期回顾 Android APP性能测试笔记(一)



(5)FPS


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


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参数等于0ro.debuggable等于1android系统)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



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



往期回顾:


Android APP性能测试笔记(一)

如何进行前端性能测试--入门篇

mock + fidder如何应用在测试中

 dubbo接口界面化调试工具(二)

 dubbo接口界面化调试工具(一)





- END -








【声明】内容源于网络
0
0
慧测
专注人工智能前沿技术落地企业实战应用
内容 404
粉丝 0
慧测 专注人工智能前沿技术落地企业实战应用
总阅读104
粉丝0
内容404