APP性能测试,你需要关注哪些指标?

一、Android客户端性能测试常见指标

1、内存

2、CPU

3、流量

4、电量

5、启动速度

6、滑动速度、界面切换速度

7、与服务器交互的网络速度

二、预期标准指定原则

1、分析竞争对手的产品,所有指标要强于竞品

2、产品经理给出的预期性能指标数据

3、符合业内行业标准

三、测试方法及工具

1、内存:使用adb shell脚本进行测试,查看Log数据。adb shell dump meminfo

2、CPU:使用adb shell脚本进行测试,查看Log数据。adb shell top

注意:程序持续运行及操作过程中,内存不能一直增加,不然系统会自动kill掉该进程。

3、流量监控:可以借用网易的开源工具:Emmagee

4、电量监控:和竞品做对比测试,同一机型的测试机在不同时间,不同网络条件,不同功能使用的情况下分别测试电量使用情况。

5、启动速度和滑动、界面切换速度:编写测试代码(Android Instrumentation),打桩到源码中,运行后通过log数据进行分析。

四、不同角色谈软件性能

在对APP的整个测试环节中,性能测试是一个很重要的环节,它直接影响了用户的体验,那么,对于APP的性能测试,我们到底需要关注那些点呢?

其实,我们可以想想在软件设计、部署、使用、维护中一共有哪些角色参与,然后再考虑这些角色各自关注的性能点是什么,那么就可以得出测试应主要关注哪些重点。

1、从用户角度出发

开发软件的目的是为了让用户使用,我们先站在用户的角度分析一下,用户需要关注哪些性能。

对于用户来说,当点击一个按钮、链接或发出一条指令开始,到系统把结果以用户感知的形式展现出来为止,这个过程所消耗的时间是用户对这个软件性能的直观印象。

简单地说,用户最关注的其实就是其操作的响应时间。

2、站在管理员的角度考虑需要关注的性能点

(1)、 响应时间

(2)、 服务器资源使用情况是否合理

(3)、 应用服务器和数据库资源使用是否合理

(4)、 系统能否实现扩展

(5)、 系统最多支持多少用户访问、系统最大业务处理量是多少

(6)、 系统性能可能存在的瓶颈在哪里

(7)、 更换那些设备可以提高性能

(8)、 系统能否支持7×24小时的业务访问

3、站在开发(设计)人员角度去考虑

(1)、 架构设计是否合理

(2)、 数据库设计是否合理

(3)、 代码是否存在性能方面的问题

(4)、 系统中是否有不合理的内存使用方式

(5)、 系统中是否存在不合理的线程同步方式

(6)、 系统中是否存在不合理的资源竞争

4、站在测试工程师角度考虑

(1)、连接超时

       这个是App关闭的首要问题,而在移动应用中网络错误数据比例报错中最高的就是连接超时错误。

(2)、崩溃

       APP的崩溃,就是用户的崩溃。当用户使用你的App出现闪退或崩溃时,他们很有可能跑去App Store赠送你一个“一星”差评。

(3)、系统交互(电话短信干扰,低电量提醒,push提醒,usb数据线插拔提醒,充电提醒等)

       在APP使用过程中,可能会遇到各种中断场景,那么一旦发生这些场景,APP就卡死或者闪退,想必也没有多少用户愿意持续使用你的APP。

(4)、弱网下的运行情况

      电梯里、地铁上,网络信号差时,APP页面的菊花转不停,界面卡死,同时错误提示一堆,这样的情况怎能不让用户抓狂。

(5) 、CPU使用问题

        CPU频率设置过高时会导致过热,过热导致耗电更严重, CPU频率设置过低导致手机滞后,应用处理缓慢同样会导致耗电。更多时候,用户解决CPU超载问题只能关闭甚至卸载App,App就被Kill了!

五、目前很多自动化测试工具存在很多的局限性:

1、是大多自动化测试工具不方便维护;

2、是虽然很多自动化测试工具很强大,但对代码的能力要求很高,大大的增加了测试门槛;

3、是自动化投入的成本较高,相对于目前APP开发周期短的现状来说,是很不划算的。

希望能够对你有所帮助,谢谢~

你可能感兴趣的:(test专区,测试)