代码改变世界

App性能测试

2024-03-03 08:50  ttylinux  阅读(14)  评论(0编辑  收藏  举报

App性能测试主要包含以下几点:

1、响应

2、内存

3、cpu

4、FPS (app使用的流畅度)

5、GPU过度渲染

6、耗电

7、耗流

一、响应

软件的响应时间和响应速度直接影响到用户的体验度,如果一个软件,迟迟加载不出来,会直接影响到软件的日活、留存。因此对于一个软件,对响应速度测试是必不可少的。

主要测试点:

1、冷启动:首次启动app的时间间隔(只是启动时间,不包括页面加载)

2、热启动:非首次启动app的时间间隔(只是启动时间,不包括页面加载)

3、完全启动:从启动到首页完全加载出来的时间间隔

4、有网启动:从发起跳转,到页面完全加载出来的时间间隔

5、无网启动:从发起跳转,到页面完全加载出来的时间间隔

(在项目中,主要测试关注点是冷启动,热启动)

测试方法:

1、使用adb命令

1) 冷启动

adb shell am start -W packageName/ActivityName(绝对路径,首个Activity)

含义:

ThisTime: 该Activity的启动耗时;

TotalTime: 应用自身启动耗时, ThisTime+应用application等资源启动时间;

WaitTime: 系统启动应用耗时, TotalTime+系统资源启动时间

2)热启动:按back按键后再启动adb命令

测试标准:冷启动时间不超过1.5s, 热启动不超过1s.

 

二、内存

在Android系统中,每个APP进程除了同其他进程共享内存(shared dirty)外,还独用私有内存(private dirty),通常我们使用PSS(私有内存+比例分配共享内存)来衡量一个APP的内存开销。由于一个移动设备的内存是固定的,如果内存消耗过大就会造成应用卡顿或者闪退,需要对内存进行测试。正常情况下,应用不应占用过多的内存资源,且能够及时释放内存,保证整个应用内的稳定性和流畅性。

测试点:

1、空闲状态:切换至后台或者启动后不做任何操作,消耗内存最少。

2、中强度状态:时间偏长的操作应用。

3、高强度状态:高强度使用应用,可以跑monkey来测试(通常用来测试内存泄漏)。

内存泄漏:指应用里的内存一直没有释放,内存一直增加 ,系统内存一直减少

测试方法:

1、使用adb命令:adb shell dumpsys meminfo packageName

获取应用包名和Actively:

adb shell dumpsys window | findstr mCurrentFocus

测试关注点:

1、Native heap alloc

2、Dalvik heap alloc

 

 ============

使用PerfDog进行客户端性能测试

https://perfdog.qq.com/