常用工具
•利用抓包工具
-Fiddler/Charles
•使用chrome浏览器的开发者工具
•使用手机自带的限速功能(只适用IOS设备)
•需要硬件设备(路由器或者网卡)
-NEWT/ATC/WANem
一、利用抓包工具
这两款都是比较常用的抓包工具,主要方法就是通过自定义网络延迟,模拟不同的网络情况。
1.Fiddler
通过Fiddler来模拟限速,因为Fiddler本来就是个代理,它提供了客户端请求前和服务器响应前的回调接口,我们可以在这些接口里面自定义一些逻辑。Fiddler的模拟限速正是在客户端请求前来自定义限速的逻辑,此逻辑是通过延迟发送数据或接收的数据的时间来限制网络的下载速度和 上传速度,从而达到限速的效果。
Fiddler提供了一个功能,让我们模拟低速网路环境,启用方法如图
设置上行,下行速率
网络取值的算法:1000/下载速度= 需要delay的时间(毫秒)
如5kb/s,需要delay200毫秒来接收数据
启动模拟调制解调器
Rules → Performances → Simulate Modem Speeds
设置手机代理
•设置完成后,清空原有的log,并使用你的app进行弱网条件下的操作
•选择第一个请求和最后一个请求,可获得整个页面加载所消耗的总体时间。从条形图表中还可以分别出哪些请求耗时最多,从而对页面的访问进行访问速度优化
2.Charles
打开Proxy->Throttle Settings
Charles的预设已经有常用的网速模拟设置,根据需要设置即可,当然也可以自己添加预设
二、使用Chrome浏览器的开发者工具
打开Chrome浏览器的开发者工具
打开Network,点击No throttling下拉框,一样有很多的预设,可根据自己的需要选择,也支持自定义添加
三、使用手机自带的限速功能
该方法只适用于IOS平台
通过自带的Network Link Conditioner, 即可简单的模拟各种速度的网络情况
设置->开发者->NETWORK LINK CONDITIONER
手机自带的限速功能
打开Status进入后,选择预设或者自定义设置
四、需要硬件设备-路由器/网卡
市面上已经有一些弱网络模拟工具,比如:
•微软的Network Emulator for Windows Toolkit(NEWT)
•Facebook的Augmented Traffic Control(ATC)
•WANem