使用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图上可直观地看到耗时的请求。

浙公网安备 33010602011771号