Android APP性能测试(上)

时间:2022-12-10 14:07:28

 性能测试是通过自动化的测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行测试。而app的性能也越来越被关注,下面我们就介绍一下app的性能测试方法。但是性能测试是参考值,不管什么测试方法都不可能精确地测试出被测试对象的真实性能指标,这一点要事先明确。

一、内存泄露

Android内存抓取步骤

准备:电脑需安装android adb 并将adb的目录加入到系统环境变量中,通过电脑命令窗口来查看内存变化状况,并记录内存数值

步骤:

aadb devices -l 查看手机设备是否连接上,如下图所示:

Android APP性能测试(上)

b, 进入手机liunx内核

adb root 命令可以让已经root的手机进入到adbroot状态。

adb shell 命令进入手机的linux内核,出现“#”代表root权限,出现“$”代表普通用户权限。

Android APP性能测试(上)

 

C,使用top命令查看内存使用情况,如下图:

Android APP性能测试(上)

抓取特定的进程内存变化可以用命令:

adb shell top -d 1 –n 4 | find "进程名"

-d 指定刷新间隔时间

-n 指定刷新次数后退出

D,在手机上启动你要查看的app,如众筹网(com.subject.zhongchou)。查看内容使用情况,具体命令如下:

adb shell top –d 1 –n 4 | find “com.subject.zhongchou”

 Android APP性能测试(上)

想要将抓取的内容保存到本地可以用如下命令:

adb shell top -d 1 -n 4 | find "com.subject.zhongchou" >>C:\Users\58\Desktop\log.txt

log.txt的内容如下:

Android APP性能测试(上)
   我们只需要记录RSS实际使用内存这列的数据,将他画成折线图,分析内存波动状态,就是上图中画红圈部分数值,。

分析内存直线图:一般抓取每次抓取200—300个数据,抓取3-5次,然后查看内存波动情况,在一定范围内的上下起伏波动证明内存没有泄露,如果出现内存数值持续增长,没有回落现象说明可能存在内存泄露

二、    是否存在资源的重复拉取

测试步骤:

1,打开fiddler,将手机连接到fiddler上。

A,确保手机和fiddler在一个网段。

B,设置手机的代理为你电脑的IP,端口号为:8888

C,          确认即可。

2,          清空fiddler抓取记录,然后打开要检测的对象,如众筹网的App

3,复制fiddler中抓取的全部资源(一个页面求情的所有资源)到excel

4,通过excel排序,查看获取的资源中有没有重复项。

Android APP性能测试(上)

   通过上图,我们明显看到圈中的内容重复了,此时需要打回给开发,查找重复拉取资源的原因。

三,无缓存/首屏总流量

测试步骤:

1,          清除手机相应软件缓存。

2,          打开fiddler,清空fiddler抓取记录。

3,          打开要测试的Appfiddler抓取首屏加载信息。

4,          选中fiddler抓取记录中所有记录,在右侧框中选择“Statistics”选择卡。如下图所示:

Android APP性能测试(上)

Fiddler中流量就是Bytes Sent + Bytes Received,即是上图加红圈中的两项。

5,              计算一下这个流量总合是不是达到要求,当然这个是产品给出的标准,如:58app首屏流量不能超过200K。如果达不到要求,就去查找原因。

四,抓包检查(js/css)请求头不能带cookie

Cookie

1、              打开fiddler,清空fiddler抓取记录。

2、              访问App,通过fiddler抓取所有资源。

3、              挨个查看js/css中是否存在cookie

如下图所示为没有cookiejs

Android APP性能测试(上)
如下图所示为有cookiejs,不符合要求:

Android APP性能测试(上)
特别说明:

   部分统计JS需要cookie请与开发及产品沟通,沟通通过后说明原因,可以通过。