APP性能测试
-
响应;
-
内存;
-
cpu;
-
FPS (app使用的流畅度);
-
GPU过度渲染;
-
耗电;
-
耗流。
(app除了这些性能测试,还有:手机版本号兼容性,屏幕分辨率兼容性,稳定性测试,安全测试等)。
App性能测试响应点:
主要测试点:
-
冷启动:首次启动app的时间间隔(只是启动时间,不包括页面加载);
-
热启动:非首次启动app的时间间隔(只是启动时间,不包括页面加载);
-
完全启动:从启动到首页完全加载出来的时间间隔;
-
有网启动:从发起跳转,到页面完全加载出来的时间间隔;
-
无网启动:从发起跳转,到页面完全加载出来的时间间隔。
(在项目中,主要测试关注点是冷启动,热启动)测试标准:冷启动时间不超过1.5s, 热启动不超过1s。
内存:
测试点:
-
空闲状态:切换至后台或者启动后不做任何操作,消耗内存最少;
-
中强度状态:时间偏长的操作应用;
-
高强度状态:高强度使用应用,可以跑monkey来测试(通常用来测试内存泄漏);
-
内存泄漏:指应用里的内存一直没有释放,内存一直增加 ,系统内存一直减少 。
CPU:
CPU测试,主要关注的是cpu的占用率。很多时候,我们玩手机时,会出现发热发烫,那是因为CPU使用率过高,CPU过于繁忙,会使整个手机无法响应用户,整体性能降低,用户体验就会很差,也容易引起ANR(application not responding, 主线程(UI线程)如果在规定时内没有处理完相应工作,就会出现ANR)等等一系列问题。
测试点:
-
在空闲时间(切换至后台)的消耗,基本没大应用使用cpu;
-
在运行一些应用的情况下,cpu已占50%的情况下,观察应用程序占用cpu的情况;
-
在高负荷的情况下看CPU的表现(cpu占用应是在80%以上)。
FPS (应用的使用流畅度)
FPS是图像领域中的定义,是指画面每秒传输帧数,通俗来讲就是指动画或视频的画面数。FPS是测量用于保存、显示动态视频的信息数量。每秒钟帧数愈多,所显示的动作就会愈流畅。
一般来说,Android设备的屏幕刷新率为60帧/s,要保持画面流畅不卡顿,要求每一帧的时间不超过1000/60=16.6ms,这就是16ms的黄金准则,如果中间的某些帧的渲染时间超过16ms,就会导致这段时间的画面发生了跳帧,因此原本流畅的画面变发生了卡顿。
GPU渲染
GPU渲染是指在一个像素点上绘制多次(超过一次):显示一个什么都没有做的activity界面算作画了1层,给activity加一个背景是第2层,在上面放了一个Text View(有背景的Text View)是第3层,Text View显示文本就是第4层仅仅只是为了显示一个文本,却在同一个像素点绘制了四次,这是一定要优化的。过度绘制对动画性能的影响是极其严重的,如果你想要流畅的动画效果,那么一定不能忽视过度绘制。
耗电量
测试应用对电量的消耗前需要对手机本身的电量消耗有个大概了解,测试前先看规定时间内手机正常待机下(重启后待机)电量消耗为多少。然后再启动待测试APP看看消耗的电量增加了多少取差值。
测试点:
-
测试手机安装目标APK前后待机功耗无明显差异;
-
常见使用场景中能够正常进入待机,待机电流在正常范围内;
-
长时间连续使用应用无异常耗电现象。
学习资源分享
最后感谢每一个认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走
这些资料,对于想进阶【自动化测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。希望对大家有所帮助…