无线专项测试--流量测试(下)

这篇文章主要是想介绍下流量专项测试的另外一种方法tcpdump+Wireshark抓包测试法。

在后台系统的开发和测试中,借助工具抓取网络包来进行网络层的分析是一种非常常用的技术手段,常用的抓包工具有Windows下的Wireshark工具和Linux下的tcpdump。由于android本身也是一个Linux系统,所以也有对应的tcpdump版本。IOS系统也可以使用tcpdump抓包。如果我们需要测试某一个App消耗的流量就需要禁用其他APP的连网权限。限制其他app的联网权限,如果不限制的话,流量统计的不够精确。因为有些App的进程是常驻后台的,即使不运行,也会有网络报文。可以借助一些手机管家软件禁用网络。

由于tcpdump需要比较高的权限来访问底层的网络包,所以需要对android系统root权限,这里的root权限,推荐个网址http://www.shuame.com/root/ 用root精灵PC 版本链接手机就可以root。而IOS需要越狱。下面以android为例来看看。

1.通过adb push 命令把tcpdump文件导入到手机

首先你得下载这个tcpdump文件,下载完以后放到指定的文件夹,以我的电脑为例放入到C盘,C:\Users\zhoukaite\Downloads\feimao文件夹里面,  然后上传到手机目录/sdcard/data/feimao,通过adb命令上传如下

2. 给 tcpdump 增加可执行权限

adb shell

su

chmod 6755 /sdcard/data/feimao

3.启动命令

4.打开app,点击你想测试的模块,调用接口发起正常请求。这个时候会看到got 的流量数据一直在累加,当趋于稳定之后,Ctrl +C 退出adb shell 模式

启动命令之前,如果手机没有打开任何APP,流量got 是0

5.抓取到的.pcap文件要从手机导出都电脑,然后才能对文件分析

6.打开Wireshark, 打开feimao.pcap文件,查看刚才的抓包结果,点击Statistics→Summary,流量的数值为Bytes一行的Displayed一栏

这里的流量数据换算结果如下:3964769B=3871.844KB=3.78MB

6.查看接口的调用流量情况

基于wireshark提供的统计功能,从图中能看出各条TCP stream 进出流量情况。

除此之外,用fiddler、Charles工具都可以抓包分析流量,另外腾讯的GT、一些手机自带的软件也是可以测试流量的。

常见的流量节省方法:

1.数据的压缩。

减少数据传输量是一个最基本节省流量的方法,在尽量不影响功能和体验的情况下,压缩是一种很直接的减少流量方法。压缩包含接口文本数据的压缩、js文件的压缩以及图片的压缩。

2、不同数据格式的采用

在传输相同的信息情况下,采用更精简的文件格式也是一种常用的减少流量的方法。例如采用JSON格式作为接口数据返回格式通常比XML格式要小。

3、控制访问的频次

减少流量消耗的另一个角度是减少访问频次,这个主要针对后台数据上报,PUSH消息检查等定时机制的。

4、只获取必要的数据

有时候APP一页的内容非常多,而用户可能只会看一部分,过多的从后台拉去数据就是浪费,所以可以采用分屏加载或者懒加载的方式来减少流量消耗。

5、缓存

缓存也是一种非常有效的方法,做法和浏览器缓存类似,可将图片,js等数据暂存起来,但由于手机存储空间有限,也需要控制整个缓存大小,并给用户提供清理缓存的选项。

6、针对不同网络类型设计不同的访问策略

当前大多数用户更多的在意在4G情况流量的使用,而在wifi情景下,流量和带宽都不是问题。针对这两种情况的差异,可以通过针对不同网络类型设计不同的访问策略,因为有些APP不同的网络类型返回的内容不一样。

原文地址:https://www.cnblogs.com/feimaoyuzhubaobao/p/9093597.html

时间: 2024-10-08 09:50:05

无线专项测试--流量测试(下)的相关文章

无线专项测试--流量测试(上)

针对流量测试,首先要搞明白什么是流量? 流量是指手机上网产生的流量数据,用手机打开软件或进行互联网操作时,会和服务器之间交换数据,手机流量就是指这数据的大小.我们的收集通过运营商的网络访问Internet,运营商替我们的手机转发数据报文,数据报文的总大小(字节数)即流量,这里的数据报文包含手机上下行的报文.由于数据报文采用IP协议传输,运营商计算的流量一般是包含IP头的数据报文大小. 我们使用安卓自身提供的TCP收发长度统计功能 一般APP和后台服务器之间的通信都是基于TCP的,所以我们可以利用

Android-APP流量测试及弱网测试

流量篇 概念 中等负荷:应用正常操作 高负荷:应用极限操作 流量测试中的测试子项: 1.应用首次启动流量值 2.应用后台连续运行 2 小时的流量值 3.应用高负荷运行的流量峰值 4.应用中等负荷运行时的流量均值 获取流量数据: 1.tcpdump+wireshark 2./proc/net/目录下相关文件 cat /proc/net/dev 获取系统的流量信息 3.查询应用的pid: adb shell ps | grep tataufo #如:31002 通过PID获取该应用的流量数据: ad

Android测试流量的几种方法

1. tcpdump + wireshark 1.1 tcpdump抓包 注意:Android设备使用tcpdump需要root权限 tcpdump是一个在Unix-like系统中通用的网络抓包工具,当然,这个工具在Android系统中也是可以使用的. 先去下载Android系统使用的tcpdump工具 下载地址:http://www.androidtcpdump.com/ 下载后,push到手机设备上,如: abd push tcpdump /data/local/tmp/tcpdump tc

移动测试之-流量测试方案

随着移动app的越来越火爆,用户对app的流量的要求越来越高,如何为用户节省流量是很多app做宣传的口号,现如今也有很多app在做流量的统计. 测试流量的作用:在不影响用户使用app功能的情况下最大限度的为用户节省流量,提高用户是使用app的频率 测试流量方案: 1.首次启动客户端,流量使用情况统计 2.非首次启动客户端,流量使用情况 3.每个接口(上行数据,下行数据)的流量统计情况 4.在2G.3G下的不同接口流量使用情况统计 5.后台service占用流量情况统计

测试不同格式下depth buffer的精度

这篇文章主要是参考MJP的"Attack of The Depth Buffer",测试不同格式下depth buffer的精度. 测试的depth buffer包含两类: 一是非线性的depth buffer,存储着perspective z(也就是最常用的,透视投影后归一化的z/w的buffer),二是线性的depth buffer,存储着view space z(这里的线性指的是在view space 中是否线性).测试的格式包括16位浮点数,32位浮点数,16位定点数,还有最常

测试基础(下)

性能测试--性能指标 1 (1)常用的性能测试 指标有哪些 ? 常用的性能测试指标通常有软件的,事务处理率,IO性能,数据库性能,内存利用率和cpu利用率等时间与资源的使用效率 (2)什么是软件的事务处理时间 ? 是指在处理某一项 任务时从开始 到完成所花费的时间,该时间不仅包括 软件产品本省处理该事务所花费的时间,而且包括使用者与软件产品交互所花费 的时间 (3)什么 是软件产品的IO性能? 包括 物理硬盘的IO性能,网络的IO性能 和其他硬件的IO性能 以物理硬盘的IO性能为例,在需要进行大

带你玩转java多线程系列 “道篇” 多线程的优势及利用util.concurrent包测试单核多核下多线程的效率

java多线程 “道篇” - 多线程的优势及用concurrent包测试单核多核下多线程的效率 1 超哥对于多线程自己的理解 2 测试代码 3 CountDownLatch这个同步辅助类科普 4 如何把电脑设置成单核 5 测试结果 1 超哥对于多线程自己的理解 超哥的理解:对于多线程,无非是对于顺序执行下任务的一种抽取和封装,将原来顺序执行的任务单独拿出来放到线程类的run方法中,通过线程类的start方法进行执行,对于多线程访问共同资源时,我们需要加锁,也就是只有某个线程在拥有锁的时候,才能够

2017-2018-1 20155318 《信息安全系统设计基础》第十周课上测试及课下作业

2017-2018-1 20155318 <信息安全系统设计基础>第十周课上测试及课下作业 课上测试 解析:填充消除了冲突不命中,对于x和y数组,只有在引用第0个和第4个元素的时候发生不命中.因而命中率为75%. 解析:高速缓存容量为2048,高速缓存结构为(( 32 ),8,8,32) 解析:不同层之间是以块为大小传输单元在层与层之间复制,空缓存的不命中叫强制性不命中或冷不命中 解析:存储器层次结构的每一层都缓存来自较低一层的数据.缓存存储器是分块的,数据总是以块为基本单位在每一层之间传递,

# 20155337 2017-2018 1 课上测试、课下作业、实验

20155337 2017-2018 1 课上测试.课下作业.实验 第一周 学习总结 第二周 课堂实践 第三周 学习总结 第四周 学习总结+myod 第五周 学习总结 课堂实践 第六周 学习总结 实验一 第七周 学习总结 实验二 第八周 加分项目pwd 第九周 学习总结 第十周 实验三 第十一周 学习总结