Fiddler是一个常用的网络抓包工具,它也可以用来模拟弱网环境进行测试。
在测试时需要用到弱网测试,也就是在信号差、网络慢的情况下进行测试。比如,用户在地铁、电梯、地下车库等场景经常会遇到会话中断、超时等情况,这种就属于弱网。
使用Fiddler进行弱网测试主要通过模拟网络延迟和带宽限制来实现。以下是详细步骤:
一、安装工具
首先,确保你已经安装了Fiddler。如果没有,可以从[Fiddler官网](https://www.telerik.com/fiddler)下载并安装。
二、设置弱网模拟规则
1.打开自定义规则文件
在Fiddler中点击菜单栏:Rules > Customize Rules...(或按快捷键 Ctrl + R)。
这会打开 CustomRules.js 文件(使用Fiddler Script编辑器)
2.添加弱网模拟代码
在脚本中找到 OnBeforeRequest
函数,添加以下代码(若没有则新建):
// 模拟上行/下行延迟(单位:毫秒)
oSession["request-trickle-delay"] = "1000"; // 请求延迟(上行)
oSession["response-trickle-delay"] = "1000"; // 响应延迟(下行)// 模拟带宽限制(单位:KB/s)
oSession["request-trickle-speed"] = "10"; // 上行速度(10KB/s ≈ 80Kbps)
oSession["response-trickle-speed"] = "50"; // 下行速度(50KB/s ≈ 400Kbps)
参数说明:
trickle-delay
:每个数据包的延迟(网络延迟)。
trickle-speed
:传输速率(带宽限制)。
调整值:根据场景修改(如2G/3G场景)。
3.保存并生效
按 Ctrl + S
保存文件,规则自动生效。
三、验证弱网效果
1.开启流量捕获
确保Fiddler左下角Capturing处于开启状态(显示数字)。
2.测试网络请求
在应用中发起请求(如访问网页),观察请求耗时和响应速度。
在Fiddler的Timeline标签页可直观查看请求延迟https://docs.telerik.com/fiddler/images/timeline-tab.png
常用网络场景参数参考
网络类型 | 延迟(ms) | 上行速度(KB/s) | 下行速度(KB/s) |
---|---|---|---|
2G | 1000-2000 | 2-5 | 5-10 |
3G | 300-500 | 10-20 | 30-50 |
4G(弱) | 200-300 | 30-50 | 100-200 |
低速WiFi | 100-200 | 50-100 | 100-500 |
注意事项:
1.全局代理影响
Fiddler代理会捕获所有系统流量,测试结束需关闭代理
2.精准控制
在脚本中使用条件语句,针对特定域名启用弱网:
if (oSession.HostnameIs("yourdomain.com")) {oSession["response-trickle-delay"] = "2000";
}
3.HTTPS抓包
确保已启用Tools > Options > HTTPS > Decrypt HTTPS traffic
通过以上步骤,可高效模拟弱网环境,测试应用在低质量网络下的表现(如加载超时、页面卡顿、数据中断等)