古人已用三冬足,年少今开万卷余。这篇文章主要讲述Android应用流量测试相关的知识,希望能为你提供帮助。
GT是腾讯出品的开源调试工具,本次测试中用其进行手机的流量统计和抓包工具
- GT(中文产品名称:随身调):是腾讯出品的开源调试工具,本次测试中用其进行手机的流量统计和抓包。请在android手机上安装GT应用(可以通过官网或应用宝下载)。
- Wireshark:抓包的分析工具,也提供了Android手机的抓包实现,GT中抓包的功能就是在其提供的实现基础上的易用性封装,本次测试中用Wireshark进行抓包的分析。请在PC上安装Wireshark。
正文
其实想知道一款应用费不费流量,大部分Android4.x版本系统已经可以简单的查看了:
文章图片
关注流量比较粗的话,看一下上面这里也就够了,但从测试的需求看,这里只能观察到宏观的流量情况,到1天的流量消耗就没法再细化了,如果想知道具体一个业务操作或一段时间内的流量消耗呢?如果想知道应用一次启动的流量消耗呢?这时就该使用前面介绍的工具了。
比前面稍微深入一些,我们可能需要知道一个业务操作过程内,消耗的流量,及发出请求的流量、收到响应结果的流量各有多少,并且流量的消耗曲线是怎样一个走势。这时就该使用GT,关于GT的基本使用和为什么用GT,GT网站有详细的说明,这里只介绍和流量相关的部分。GT提供了一种简单的测试方式,也提供了一个严谨但麻烦的测试方式。
- 首先我们来看简单的方式:
文章图片
2. 业务操作前,启动数据采集,将会记录选中应用的流量的变化,为了方便统计,可以先把业务操作前发生的流量记录归零。
文章图片
3. 退到应用界面,执行需测试的业务操作。
4. 业务操作后,回到GT界面,停止流量数据的采集,查看本次业务操作流量的变化。
文章图片
到这里,从前面一张图我们已经可以知道一个业务操作过程中消耗的流量,包括发出请求的流量、收到响应结果的流量、流量消耗曲线是怎样一个走势了。
5. 我们可以保存本次测试结果到文件,以备后面更深入的分析。
文章图片
来围观一下这个文件:
文章图片
用强大的Excel把GT应用里显示的趋势图还原出来不是难事。
文章图片
- 我们再来看看麻烦而严谨的方式:
手机抓包是针对手机的网卡,所以这种方式无法单独抓一个应用的包,需要后续将归属于应用的包分析出来,而为了后续分析减少工作量,测试时候应尽量把其他能消耗流量的应用都关了。Android手机的抓包是Wireshark提供的实现,GT上面做了封装,使手机可以不必连着PC即可抓包,方便在室外测试的场景。
【Android应用流量测试】1. 先从GT启动抓包。
文章图片
文章图片
2. 之后还是执行测试的业务操作。
3. 被测业务操作结束后,点击stop,即停止抓包,并把抓包文件保存在对应的目录中。
文章图片
将抓到包文件导入到PC,用Wireshark即可分析抓包文件。关于Wireshark的使用,和PC上的使用没有区别,请大家自行在网上搜索,这里仅对使用Wireshark的要点提示下:
(1)我们最先需要知道我们的应用发出了哪些请求,对应了上行流量,可以在Wireshark左上角【过滤】框输入"http"或"tcp"(如果确认过被测应用都是http请求,就只需要按http过滤),确认测试场景GET和POST的请求类型和个数(过滤结果可按【Info】分类更方便统计)。
文章图片
(2)在具体请求上可以右键“follow tcp stream”,等同于过滤条件tcp.stream eq xx,这样可以过滤出和它在同一个TCP流的消息。
文章图片
(3)过滤条件出来后再点击【统计】-> 【概要】,对应Bytes栏【显示】列的数据即为流量。
文章图片
文章图片
(4)通过对包的过滤分析,我们自然就可以得到流量的大小,产生流量的类型和原因,请求的频率,这样就能够对后续的流量优化进行指导了。
文章图片
(5)更谨慎的,抓包和GT采集流量数据可以相互对照,避免分析时有所遗漏。
文章图片
推荐阅读
- android monkey测试学习
- 安卓笔记ormlite入门
- 监听APP升级广播处理
- Android 依据EditText搜索框ListView动态显示数据
- 一种提高Android应用进程存活率新方法
- Android学习之图片压缩,压缩程度高且失真度小
- springmvc HandlerMapping HandlerAdapter
- Android之——AsyncTask和Handler对照
- Office 2016怎样激活?Office 2016 KMS激活密钥大全_其它办公