Android App性能测试之一:简介
1、性能测试
启动时间,主要测试App在启动过程中的耗时情况
CPU, 主要测试App在使用过程中的CPU占比率
流量,主要测试App在使用过程中对流量的消耗情况
电量,主要测试App在使用过程中对电量的消耗情况
内存,主要测试 App在使用过程中对内存的消耗,验证使用过程中无内存泄露的情况
FPS(每秒的帧数),衡量流畅度,通过观察,可以发现流畅度异常的情况。
过度渲染,影响流畅度的一个方面就是过度渲染,通过过度渲染的测试,可以发现一些异常的情况 。
2、性能测试环境准备
Android SDK
Python 2.7
PyCharm
3、
启动时间
(1)冷启动 :程序首次启动,即进程首次创建并加载资源的过程
启动App
adb shell am start -W -n package/activity
App启动后,可以得到这行指令完成时输出的一个时间,这个时间可以用来作为启动时间耗时的参考值
adb logcat | findstr START # 得到package/activity的名字 adb logcat | grep START(linux,mac使用这个指令)
停止App命令
adb shell am force-stop package
(2)热启动:应用程序启动后,点back键或home键,应用程序退到后台,并未完全被杀死的状态,然后再次启动,占用过程
启动指令与冷启动启动指令一样
停止App命令
adb shell input keyevent 3 # 3代表点击手机上的back键
热启动过程:
启动APP :adb shell am start -W -n package/activity
按home键退出:adb shell input keyevent 3
再次启动:adb shell am start -W -n package/activity
把上述过程脚本化之后,就可以实现自动化的获取启动时间这个过程。
4、
(1)获取命令执行时间
代码见AppStartTime ,下面对launchTime.csv进行数据分析。
除去第一个数据,对其他的求均值,然后画图标看波动情况。
(2)时间戳差值
代码自己去写。。