APP测试学习:app启动性能分析

app客户端测试基本内容以及手段

 App启动性能指标

  • 冷启动:建议启动时间5s
  • 暖启动:建议启动时间2s
  • 热启动:建议启动时间1.5s
  • 首屏启动

主要思路

  • adb logcat
  • 录屏+视频拆帧
  • uiautomator等自动化工具200ms巡检界面变化
  • traceview
  • 硬埋点(开发处理)

adb logcat使用

package=com.hundsun.winner.pazq

清理缓存数据: adb shell pm clear $package

停止进程: adb shell am force-stop $package

启动app: adb shell am start -S -W $package/ .view.WelcomeActivityAlias

获取数据: adb logcat |grep -i displayed

ffmpeg拆帧

先停止app:adb shell am force stop $package

开始录屏(第三方模拟器上好像无法使用,可通过其他录屏工具进行录屏,报错Encoder failed (err=-38)):adb shell screenrecord --bugreport - time limit 30
/data/local/tmp/xueqiu.mp4 &
启动app(也可以手动启动):adb shell am start -S -W $package/.view.WelcomeActivityAlias
将手机上的录屏文件拉取到本地:adb pull /data/local/tmp/xueqiu.mp4 .

用ffmpeg工具进行拆帧,没秒10帧
ffmpeg -i xueqiu.mp4 xueqiu.gif
ffmpeg -i xueqiu.mp4 -r 10 frames_ _%03d.jpg
拆帧后的效果如下图所示,可以根据拆帧后的图片推算启动应用所需时间:

 systrace进行卡顿分析

需要python2.7版本;systrace目录:android-sdk-windowsplatform-tools

执行命令如下:

python systrace.py --time=10 --no-compress -o=trace.html sched gfx view -a com.hundsun.winner.pazq

执行完成后,报错如下(暂未解决)

查看UI性能

adb shell dumpsys gfxinfo 包名

原文地址:https://www.cnblogs.com/canghai1024/p/13711960.html