Android APP性能测试(上)
性能测试是通过自动化的测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行测试。而app的性能也越来越被关注,下面我们就介绍一下app的性能测试方法。但是性能测试是参考值,不管什么测试方法都不可能精确地测试出被测试对象的真实性能指标,这一点要事先明确。
Android内存抓取步骤
准备:电脑需安装android adb 并将adb的目录加入到系统环境变量中,通过电脑命令窗口来查看内存变化状况,并记录内存数值
步骤:
a、adb devices -l 查看手机设备是否连接上,如下图所示:
b, 进入手机liunx内核
adb root 命令可以让已经root的手机进入到adb的root状态。
adb shell 命令进入手机的linux内核,出现“#”代表root权限,出现“$”代表普通用户权限。
C,使用top命令查看内存使用情况,如下图:
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”
想要将抓取的内容保存到本地可以用如下命令:
adb shell top -d 1 -n 4 | find "com.subject.zhongchou" >>C:\Users\58\Desktop\log.txt
log.txt的内容如下:
我们只需要记录”RSS实际使用内存”这列的数据,将他画成折线图,分析内存波动状态,就是上图中画红圈部分数值,。
分析内存直线图:一般抓取每次抓取200—300个数据,抓取3-5次,然后查看内存波动情况,在一定范围内的上下起伏波动证明内存没有泄露,如果出现内存数值持续增长,没有回落现象说明可能存在内存泄露。
测试步骤:
1,打开fiddler,将手机连接到fiddler上。
A,确保手机和fiddler在一个网段。
B,设置手机的代理为你电脑的IP,端口号为:8888
C, 确认即可。
2, 清空fiddler抓取记录,然后打开要检测的对象,如众筹网的App。
3,复制fiddler中抓取的全部资源(一个页面求情的所有资源)到excel。
4,通过excel排序,查看获取的资源中有没有重复项。
通过上图,我们明显看到圈中的内容重复了,此时需要打回给开发,查找重复拉取资源的原因。
三,无缓存/首屏总流量
测试步骤:
1, 清除手机相应软件缓存。
2, 打开fiddler,清空fiddler抓取记录。
3, 打开要测试的App,fiddler抓取首屏加载信息。
4, 选中fiddler抓取记录中所有记录,在右侧框中选择“Statistics”选择卡。如下图所示:
Fiddler中流量就是Bytes Sent + Bytes Received,即是上图加红圈中的两项。
5, 计算一下这个流量总合是不是达到要求,当然这个是产品给出的标准,如:58的app首屏流量不能超过200K。如果达不到要求,就去查找原因。
四,抓包检查(js/css)请求头不能带cookie
Cookie:
1、 打开fiddler,清空fiddler抓取记录。
2、 访问App,通过fiddler抓取所有资源。
3、 挨个查看js/css中是否存在cookie。
如下图所示为没有cookie的js:
部分统计JS需要cookie请与开发及产品沟通,沟通通过后说明原因,可以通过。