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 包名