一、弱网简介
弱网看字面意思就是网络比较弱,我们通称为信号差,网速慢。
web端和app端皆需要进行弱网测试,观察软件的健壮性
1、弱网的影响
在地铁、隧道、电梯和车库等场景下使用APP ,网络会出现延时、中断和超时等情况。
- 如果我们处于网速慢的地段,我们请求某个功能,app会响应非常慢,页面加载不出来,对于我们测试人员来看,就是用户请求这个API,API加载速度比较慢。
- 大家都喜欢刷抖音当我们在地铁上刷抖音,滑到下一个时候突然间就会页面卡住,这也是网络的原因导致的。
- 很多bug都会在弱网的情况下展现出来,如由于响应慢而多次请求,最终导致app出现ANR问题。
2、弱网定义
现在很多时候2G或者在地铁、电梯等场景的3G网,均可定义为弱网
下面是常见网络制式的上行、下载速度表,可以参考。
二、windows使用Clumsy弱网测试
windows系统下推荐使用clumsy,clumsy工具简单易上手,可以上下行网络的延迟和丢包。
clumsy下载地址https://files-cdn.cnblogs.com/files/nimq/clumsy-0.2-win64.zip
1、 解压clumsy-0.2-win64.zip(下载地址:https://files-cdn.cnblogs.com/files/nimq/clumsy-0.2-win64.zip)注:只适用于Windows 64位电脑,其他系统版本需要下载适配的版本
2、 打开clumsy.exe(如果要给手机设置网络波动,则需要先打开代理,如fiddler)
3、 presets选择 all sending packets
4、 设置拦截
Lag:延迟,把请求缓存一段时间再发出,可以用来模拟网络延迟,最大3000ms;
Drop:丢包,随机丢弃一些请求;
Throttle:节流,把一小段时间内的请求拦截下来,再在同一时间发出去;
Duplicate:重发,随机复制一些请求,与原请求一起发送;
Out of order:乱序,打乱请求的发送顺序;
Tamper:篡改,随机修改小部分请求的内容;
5、 点击start开始,对应指标前面出现绿点,表示该项拦截生效
6、 点击stop停止
三、Mac使用Network Link Conditioner 弱网测试
mac系统推荐使用 Network Link Conditioner ,该工具为苹果官方提供,也是简单易上手。
下载地址: https://developer.apple.com/downloads/ 获取苹果开发者网站提供的下载 Network Link Conditioner
四、IOS移动端弱网测试
IOS 自带Network Link Conditioner(通过xcode连接手机,激活开发者选项,放开此功能模拟弱网)
在Xcode中,shift+command+2打开设备配置窗口,选中连接的设备,点击Use for Development
五、Android移动端弱网测试
Android做弱网测试的工具很多,推荐腾讯的QNET做弱网测试。
工具下载地址:(https://wetest.qq.com/product/qnet)
扫码下载安装后,只需要使用qq账号登录,登录成功后选中要进行弱网测试的程序,就可以进行弱网的模板配置。
六、web端弱网测试
1、打开电脑管家
2、菜单栏选择工具箱
3、选择流量监控
4、找到目标浏览器,修改或禁用该浏览器上行&下行速度
七、Fiddler实现弱网测试
1、Fiddler中启动弱网
打开Fiddler,Rules->Performance->勾选 Simulate Modem Speeds,勾选之后访问网站会发现网络慢了很多。
2、设置弱网的参数
菜单Rules--->Cutomize Rules
让我们来分析一下这几行代码:
if(m_SimulateModem) :判断m_SimulateModem是否为true(是否开启),也就是是否设置了弱网模式。
oSession["request-trickle-delay"] = "300" :上传1KB内容需要300ms,转化一下上传速度:1Kb/0.3s = 3.3KB/s,也就是说网络上行速度只有3.3KB。
oSession["response-trickle-delay"] = "150" :下载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,关闭弱网模拟。
注:这部分内容引用自软件测试之使用Fiddler实现弱网测试_其它综合_脚本之家