【Fiddler】Fiddler实现弱网测试
一、弱网简介
弱网看字面意思就是网络比较弱,我们通称为信号差,网速慢。
1、弱网的影响
在地铁、隧道、电梯和车库等场景下使用APP ,网络会出现延时、中断和超时等情况。
- 如果我们处于网速慢的地段,我们请求某个功能,app会响应非常慢,页面加载不出来,对于我们测试人员来看,就是用户请求这个API,API加载速度比较慢。
- 大家都喜欢刷抖音当我们在地铁上刷抖音,滑到下一个时候突然间就会页面卡住,这也是网络的原因导致的。
- 很多bug都会在弱网的情况下展现出来,如由于响应慢而多次请求,最终导致app出现ANR问题。
2、弱网定义
现在很多时候2G或者在地铁、电梯等场景的3G网,均可定义为弱网,下面是常见网络制式的上行、下载速度表,可以参考。
3、Fiddler手机代理设置
1)启动Fiddler->Tools->Fiddler Options
2)HTTPS选项卡中,设置如下,勾选过程中如有弹窗允许即可;
Connections选项卡中,勾选Allow remote computers to connect,勾选时如有弹窗确定即可;
Fiddler listens on port:8888是监控端口;
4、手机设置
1)手机和电脑连同一个WiFi;
2)通过ipconfig查看计算机IP地址,如本机IP地址为:192.168.9.150;打开手机无线网络,选择连接的WiFi,设置代理,IP输入192.168.9.150,端口:8888;
3)手机浏览器访问:192.168.9.150:8888,出现响应页面说明连接成功,点击响应界面中的“fiddlerRoot certificate”安装证书,然后就可以操作App通过Fiddler进行抓包了。
可以在Fiddler Statistics中查看各个请求发送和接受数据大小及传输时间。
二、Fiddler实现弱网的测试
无论是做web端还是app端的测试,我们都需要对弱网进行测试,对于弱网方法有很多种,如:Fiddler模拟弱网,控制电脑的网速等,今天介绍下Fiddler如何进行弱网测试。
1、Fiddler中启动弱网
打开Fiddler,Rules->Performance->勾选 Simulate Modem Speeds,勾选之后访问网站会发现网络慢了很多。
2、设置弱网的参数
菜单Rules—>Cutomize Rules
让我们来分析一下这几行代码:
if (m_SimulateModem) {
// Delay sends by 300ms per KB uploaded.
oSession["request-trickle-delay"] = "300";
// Delay receives by 150ms per KB downloaded.
oSession["response-trickle-delay"] = "150";
}
- 首先来判断m_SimulateModem是否为true(是否开启),也就是是否设置了弱网模式。
- oSession[“request-trickle-delay”] = “300”;
Delay sends by 300ms per KB uploaded:上传1KB内容需要300ms,转化一下上传速度:1Kb/0.3s = 3.3KB/s,也就是说网络上行速度只有3.3KB。
- oSession["response-trickle-delay"] = "150";
Delay receives by 150ms per KB downloaded:下载1KB内容需要150ms,转化后的下载速度:1KB/0.15s=6.6KB/s,也就是说网络下载速度只有6.6KB。
- 如果你想设置下载的速度为50KB/s,你则需要设置Delay 时间为 20ms。
- 也可以限制上传的速度,调整oSession[“response-trickle-delay”]的值即可。
3、验证效果
同样的接口,开启弱网前后分别运行一次,查看统计数据。
4、恢复设置
完成测试之后,需要再次执行:打开Fiddler,Rules->Performance->勾选 Simulate Modem Speeds,关闭弱网模拟。