Fiddler弱网测试

本文内容皆为作者原创,码字不易,如需转载,请注明出处:https://www.cnblogs.com/temari/p/13438262.html

一,弱网测试

弱网测试属于健壮性测试的内容,开展弱网测试主要依赖于弱网环境的模拟。目前通常是通过模拟低带宽,丢包,高延迟,抖动,超时,网络中断等弱网环境来验证软件在较差网络环境下的功能及异常处理。对于某些软件,如直播,视频语音软件对网络质量要求很高,视频语音流畅性对用户体验影响很大,弱网测试是必不可少的。

二,弱网测试工具

目前市面上弱网测试工具比较多,各有其特点,简单举例如下:
1.clumy:设置丢包,延迟,截流,重发乱序,篡改。
2.Network-Emulator-Toolkit:主要设置丢包率和延时。
3.HOLOWAN弱网仪:模拟带宽限制、时延、丢包、抖动、误码等各种网络损伤,模拟各种网络条件。
4.Fiddler:只能设置网络延时,不能设置丢包。
5.charles:模拟各种网速,可以设置丢包率。

三,Fiddler模拟弱网环境原理

Fiddler作为代理服务器,客户端的请求被Fiddler截获后转发给服务器,服务器响应报文返回给Fiddler,Fiddler转发给客户端。Fidder模拟弱网环境,是对Fiddler发送请求给服务器,服务器返回信息给Fiddler这个网段进行限速。即Fiddler通过延迟发送数据或接收数据的时间来限制网络的下载速度和上传速度,从而达到限速的效果。如图所示:

四,Fiddler弱网测试

4.1 点击 Rules->Costuomize Rules(快捷键Ctrl+R),弹出窗口,Ctrl+F,输入"simulate",查找如下一段代码,如图:

#由代码描述,当m_SimulateModem为True时,每上传1KB需要300ms,即1/0.3≈0.33 kb/s,每下载1kb需要150ms,即1/0.15≈6.67 kb/s。
#当Fiddler设置弱网模式时,m_SimulateModem会置为True。有时候我们有明确的上传和下载速度限制,默认情况不符合要求,可以调整代码的时间。
#如限制上传速度,调整oSession["request-trickle-delay"] = "1000",限制下载速度,调整oSession["response-trickle-delay"] = "500",Ctrl+S保存。
    if (m_SimulateModem) {
            // Delay sends by 300ms per KB uploaded.
            oSession["request-trickle-delay"] = "1000"; 
            // Delay receives by 150ms per KB downloaded.
            oSession["response-trickle-delay"] = "500"; 
        }

4.2 修改代码后返回主界面,详情和数据统计面板,选中log,点击【Clear Log】清空日志,如图:

4.3 点击Rules->Performance->Simulate Modem Speeds,勾选弱网模式,如图:

4.4 设置弱网模式后,可以看到监控面板的会话列表响应明显比之前慢了,点击【Statistics】,可以查看整个页面加载各个部分加载消耗的时间,如图:

通过Collapse Chart可以帮助开发分析哪些代码性能需要优化。

4.5 Fiddler弱网测试不使用时,取消勾选Rules->Performance->Simulate Modem Speeds即可。

posted @ 2020-08-05 15:02  柠檬草不孤单  阅读(639)  评论(0编辑  收藏  举报