使用Fiddler模拟弱网进行测试

Fiddler 弱网测试

一、设置网络限制

Rules–>>Customize Rules...点击打开Fiddler编辑器。

找到OnBeforeRequest方法中的if (m_SimulateModem)逻辑。

这段代码只需要知道request-trickle-delay代表的是网络请求的延迟时间,response-trickle-delay代表的是网络响应的延迟时间,单位都是毫秒,这里默认给的是300毫秒和150毫秒,所以,只需要修改这2个值即可模拟网络延迟和弱网络环境了.

if (m_SimulateModem) {
    // Delay sends by 300ms per KB uploaded.
    oSession["request-trickle-delay"] = "600"; //网络请求延迟600ms
    // Delay receives by 150ms per KB downloaded.
    oSession["response-trickle-delay"] = "300"; //网络响应延迟300ms
}

二、开启网络延迟

Rules–>>Performance–>>Simulate Modem Speeds勾选即可。

开启网络延迟

查看的时候就在Statistics查看结果(需要点击接口)

开启网络延迟前后对比

未开启网络延迟
未开启网络延迟

开启网络延迟
开启网络延迟

三、扩展弱网络规则

可能我们在测试中不会想要一个一直虚弱的网络环境,而是随机强弱的网络,这样比较贴切我们的真是情况,那么我们可以修改上述代码为:
添加一个方法:

static function randInt(min, max) {
	return Math.round(Math.random()*(max-min)+min);
}

更改OnBeforeRequest方法中的if (m_SimulateModem)逻辑:

if (m_SimulateModem) {

	// Delay sends by 300ms per KB uploaded.

	oSession["request-trickle-delay"] = ""+randInt(1,2000);

	// Delay receives by 150ms per KB downloaded.

	oSession["response-trickle-delay"] = ""+randInt(1,2000);

}

这里的randInt(1,2000)代表1-2000中的一个随机整数,这样就会出现偶尔有延迟偶尔网络又良好的情况

四、模拟2G 3G 4G 网络

时间单位对应为毫秒,为每上传、下载 1KB 所需耗时

1KB=8kb

2G 网络延迟计算
上行(MHz)下行(MHz)上行速率(bps)下载速率(bps)备注
GSM900890~915935~9602.7K9.6K又称PGSM
EGSM900880~890925~9352.7K9.6K又称扩展GSM
GSM18001710~17851805~18802.7K9.6K又称DCS1800
GSM19001850~19101930~19902.7K9.6K又称PCS1800
上行:2.7K
下行:9.6K
上行:[1/(2.7/8)]X1000=2962ms
下行:[1/(9.6/8)]X1000=833ms
3G 网络延迟计算
上行(MHz)下行(MHz)上行速率(bps)下行速率(bps)调制方式备注
CDMA2000(中国电信)825~835870~8801.8M3.1MFDD补充频率:885~ 915,930~ 960
TD-SCDMA(中国移动)1880~19202010~2025384K2.8MTDD不分上下行,补充频率:2300~ 2400
WCDMA(中国联通)1920-19802110~21705.76M7.2MFDD补充频率:1755~ 1785,1850~ 1880
电信:上行:1.8M    1.8x1024
      下行:3.1M    3.1x1024
上行:{1/[(1.8x1024)/8]}x1000=4.34ms
下行:{1/[(3.1x1024)/8]}x1000=2.52ms
移动:上行:384k
      下行:2.8M
上行:[1/(384/8)]x1000=20.8ms
下行:{1/[(2.8x1024)/8]}x1000=2.79ms
联通:上行:5.76M
      下行:7.2M
上行:{1/[(5.76x1024)/8]}x1000=1.35ms
下行:{1/[(7.2x1024)/8]}x1000=1ms
4G 网络延迟计算
上行(MHz)下行(MHz)上行速率(bps)下行速率(bps)
中国电信2370~23902635~265550M100M
中国移动2300~23202555~257550M100M
中国联通1880~1900、2320~23702575~263550M100M
上行:50M
下行:150M
上行:{1/[(50x1024)/8]}x1000=0.15625ms
下行:{1/[(150x1024)/8]}x1000=0.05208ms

五、进行App弱网测试

Fiddler网络延迟开启,手机端设置代理即可模拟出弱网情况。

  • 3
    点赞
  • 42
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值