汇智动力

售前免费咨询热线: 4 0 0 - 1 8 6 - 0 9 0 5
汇智资讯Huizhi information

当前位置:首页 »移动应用测试篇(4)——App测试技术(2)

移动应用测试篇(4)——App测试技术(2)

日期:2022-05-19 17:26:04 访问量: 来源:

APP专项测试——流量测试

 

移动互联产品给用户带来了很大的便利,但是在未来的一段时间内,移动网络的带宽还是比较有限,毕竟流量也是用户要付费的。这使得用户会关心他使用的App使用了多少流量,因为这直接关系到用户的资费账单。一些不好的App设计,或者缺陷,比如频繁在后台联网去服务端获取信息等,这些都会导致用户卸载App,或者引起投诉。因此进行软件的流量测试是很有必要的。

 

接下来我们就讨论如何针对Android和ios平台进行流量测试。

以下讲述3种流量测试,方法:手机上抓包、基于WiFi代理的fiddler工具抓包、Android自带的抓包方式。

 

1:手机上抓包 tcpdump+wireshark(参考adt结合使用)

 

在后台系统开发和测试中,借助工具抓取网络包(简称:抓包)来进行网络层的分析师一种常用的技术手段,常常使用的抓包工具有Wireshark和linux下的tcpdump。

由于Android系统是基于Linux的,所以可以使用tcpdump这个工具,但有一点特殊要求是手机一定要获取ROOT权限,下面就来详细给大家讲解一下如何使用Android的tcpdump获取流量信息。

 

前要:先使用adt安装android,然后打开虚拟机,详情参考资料(android开发

环境的搭建)

步骤1::先下载Android版tcpdump文件(

https://www.androidtcpdump.com/android-tcpdump/downloads)

 

移动应用测试篇

 

步骤2::将tcpdump通过adb shell命令上传到Android虚拟机上去:

adb push tcpdump /data/local/tcpdump (上传数据包)

adb shell chmod 6755 /data/local/tcpdump (权限)设置

Tcpdump

 

移动应用测试篇

• 语法:adb push [ tcpdump的window绝对路径] [/data/local/tcpdump]

adb shell chmod +[权限值] [data/local/tcpdump]

• 步骤3:使用tcpdump抓取流量数据包

adb shell---进入adb shell

su root--切换到root账户

/data/local/tcpdump -s 0 -w /data/capture.pcap -v

 

移动应用测试篇

data/local/tcpdump -s 0 -w /data/capture.pcap -v

详解:

-s 0:抓取数据包时默认抓取长度为68字节。加上 –s 0表示抓取完整的数据包信息

-w /data/capture.pcap:表示把抓取的数据包文件保存在Android虚拟机的/data 文件夹下,

-v:表示在命令执行中显示当前的包的数量

 

• 步骤4:使用adb pull /data/capture.pcap下载文件到windows系统下

 

移动应用测试篇

 

• 步骤5:使用wireshark打开capture.pcap数据包文件,并分析数据

 

移动应用测试篇

 

• 步骤6:wireshark打开刚刚的抓包文件,使用filte做过滤,根据wireshark显示过滤器的语法,假设APP对应的目标服务器的地址是(121.14.76.22)

 

移动应用测试篇

• Filter的语法:

“入流量” ip.src == 121.14.76.22

“出流量” ip.dst == 121.14.76.22

• 统计总流量的方法Statistics菜单:

- 简单查看流量统计可以看第一个Capture File Properties

 

移动应用测试篇

file:显示总体信息

time:显示抓取第一个、最后一个的时间和整体时间间隔

capture:OS名称、抓包的接口

interfaces:所有抓到流量与接口的详细情况

statistics:提供各种详细的数据

 

移动应用测试篇

• 2:使用fiddler工具分析网络流量(ios/android通用流量测试方法)

 

步骤1:被测手机和电脑要在同一局域网或者电脑开热点,手机连接在手机上设置wifi代理为:手动.代理主机填写window电脑的ip代理端口填写:8888

 

移动应用测试篇
移动应用测试篇
移动应用测试篇

• 查看本机电脑ip

• 如果是和手机在同一局域网:

• 无线局域网适配器WLAN的ip

• 如果是电脑端开的热点:

• 无线局域网适配器本地连接*数字的ip

 

移动应用测试篇

• 步骤2::设置fiddler工具,如下图所示:

在tools下的fiddler options的https栏勾选3个选项

 

移动应用测试篇

• 在 connection上全部勾选上,并默认端口为8888

• 注意设置好之后最好重启fiddler

 

移动应用测试篇

• 抓取APP上的HTTPS请求

• 1.如果app都是http请求,是不需要安装证书,能直接抓到的,如果是https请求,这时候手机就需要下载证书了。

• 2.打开手机浏览器输入:http://192.168.xx.xx:8888 ,这个中间的host地址就是前面查到的本机地址。

• 3.出现如下画面,点箭头所指的位置,点击安装就可以了。

 

移动应用测试篇

• 步骤3:下面使用fiddler抓取的手机打开微博时请求和响应时的流量大小

 

移动应用测试篇

• 3:通过系统自带的统计功能统计流量

 

• Android使用ADB通过uid可以查询到流量统计

• 具体方法:proc/Uid_stat/{uid}/tcp_snd

• proc/Uid_stat/{uid}/tcp_rcd’

• 限制条件:

• 1:要在真机环境下

• 2:真机要获取root权限

2、对应的情况是,在Mac上可以使用Charles作为代理,以及请求、响应显示的工具,同学们可以自行在课下研究。除了使用抓包工具进行流量的获取之外,还可以使用其他方法获取网络流量,比如App内部通过代码统计接口的数据量等,由于此部分的讲解过于复杂,这些测试方法将由同学们在

今后的工作中自己去逐步深入的了解和学习。

移动应用测试篇

常见的流量节省方法

1:数据在不影响体验和功能下进行压缩,比如网页js文件压缩、图片压缩。

2:不同数据格式的采用,比如采用json格式作为接口返回格式通常比XML格式要小。

3:优化数据的下载,比如采取分屏加载的方式来减少流量的损耗。

4:本地缓存, 可以将客户端获取的一些图片、js文件都暂时的缓存起来,减少网络数 据加载。

5:针对不同网络类型设计不同的策略,比如2g/3g网络手动下载图片等方法来优化网络。

 

• 3.流量测试应该注意的测试项:

1:应用首次启动的流量提示

2:应用后台连续运行2小时的流量值

3:应用在运行极限的平均流量值

4:针对场景法涉及的应用主流程方面的测试

5:在首次登陆时的平均值

 

(未完待续...)








 

相关阅读Reading

全国热线:400-186-0905

周一至周日9:30-24:00

我要咨询
汇智动力微信

汇智动力微信公众号