使用Fiddler进行移动端抓包和模拟弱网络测试

Posted 爱吃 香菜

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用Fiddler进行移动端抓包和模拟弱网络测试相关的知识,希望对你有一定的参考价值。

背景

需要再不同网络环境下查看允许情况,根据测试结果优化方案。

Fiddler连接移动端

Fiddler设置

设置Fiddler如下图所示:

勾选Decrypt HTTPS traffic,下拉框选择from remote clients only,只获取远程客户端的https请求。

勾选Ignore server certificate errors(unsafe)。

Fiddler默认监听端口为8888,勾选Allow remote computers to connect。

移动端设置

此处以安卓为例,ios同理。在电脑命令窗口中输入ipconfig,获取当前电脑IPV4的地址,如下图所示:

在移动端WLAN设置中,选择与电脑连接的同一个网络,进入高级设置如图所示:

代理服务器主机名:输入ipconfig获取的ipv4的地址

代理服务器端口:输入fiddler中默认的监听端口8888

点击保存。

在移动端chrome浏览器/自带浏览器中输入192.168.X.XX:8888,打开如下页面,点击FiddlerRootcertificate,下载并安装即可。

抓一下浏览器的新闻,如下图所示:

Fiddler弱网设置

Customize Rules

Rules->Customize Rules,打开Fiddler script文件,找到m_SimulateModem,如下图所示:

   if (m_SimulateModem) 
            // Delay sends by 300ms per KB uploaded.
            oSession["request-trickle-delay"] = "20"; 
            // Delay receives by 150ms per KB downloaded.
            oSession["response-trickle-delay"] = "20"; 
        

英文直译:

上传延迟发送每KB 300ms

下载延迟接收每KB 150ms

若模拟上传50kb/s的网速,则修改oSession[“request-trickle-delay”] = “20”;

计算公式:1000/网速 = oSession。

设置完成后,Rules->Performance->Simulate Modem Speeds,开启后才生效。

测试结果查看

[Statistics]单个请求内容如下,可直译理解。

多个请求:Ctrl+鼠标,选中多个请求。

ACTUAL PERFORMANCE:

Requests started at:请求开始时间

Responses completed at:响应完成时间

Sequence (clock) duration:第一个请求开始时间至最后一个请求响应完成时间的时间差

Aggregate Session duration:选中的所有请求持续时间之和

从chart图上可直观的看到耗时的请求。

手机端抓包工具

参考技术A Charles 手机抓包

接口测试之——fiddler抓包、过滤、断点调试

AndroidHttpCapture---手机轻松抓包工具

AndroidHttpCapture使用方法:
【搭建环境】
1.在测试手机安装AndroidHttpCapture即可。
2.如果测试手机使用移动网络,新增一个接入点,将其代理服务器设置为127.0.0.1 端口为8888,别的参数参照已选中的接入点进行配置,保存后选择该新增接入点即可。
如果测试手机使用WIFI,把WIFI代理设为127.0.0.1:8888。
3.首次进入AndroidHttpCapture时安装CA证书,然后把自签名证书添加到系统根证书目录。
自签名证书所在路径:手机根目录的har/littleproxy-mitm.pem。
自签名证书添加方法:
首先用openssl命令计算证书的哈希值(可以打开Linux环境Git Bash命令窗口):

然后把上面的哈希值作为文件名,添加证书(可以打开Windows环境CMD命名窗口):

【使用方法】
https://github.com/JZ-Darkal/AndroidHttpCapture

【查看HAR文件】
http://h5.darkal.cn/har/

以上是关于使用Fiddler进行移动端抓包和模拟弱网络测试的主要内容,如果未能解决你的问题,请参考以下文章

手机端抓包工具

Fiddler抓包(基本使用方法web+app端抓包篡改数据模拟低速)

移动端弱网测试

移动端抓包工具——Fiddler

抓包工具Fidder设置(移动端抓包)

使用Fiddler模拟弱网测试(2G/3G)