一、使用Jmeter进行弱网测试
找到jmeter.properties 文件,里面的字段:
#httpclient.socket.http.cps=0
#httpclient.socket.https.cps=0
这是限制http和https请求速率的参数。
cps = (target bandwidth in kbps * 1024) / 8 == 也就是B/s
(1)网络带宽的换算:
100Mbps=100Mbit/s即兆比特每秒
100MB/s=100MBytes/s即兆字节每秒
1B=8bit
100Mbps=100/8MB/s = 12.5MB/s,理论上平常的百兆带宽下载速率可以达到12.5MB/s
100MB/s=100*1024KB/s=100*1024*1024B/s
(2)设置jmeter里的参数
30MB/s = 30*1024B/s = 30720B/S
(3)使用jmeter 调京东商品接口测试 http://p.3.cn/prices/mgets?skuIds=J_11123434&type=1
默认情况下:
30MB/s下:
可以看到限制带宽后,平均响应时间变长了。
二、使用fiddler 弱网测试
【Rules】-> 【Customize Rules】打开自定义的脚本编辑界面,Ctrl+H 搜索 if (m_SimulateModem)。
"request-trickle-delay" :表示上传(请求)的延迟,单位:ms/KB
"response-trickle-delay" : 表示下载(回复)的延迟,单位:ms/KB
如果我们想要修改这个值,单位为kbps,去达到限速的目的,那么将kbps转换成ms/KB,则:
1000 / kbps = ms/KB。
如果想要修改成50kbps, 那么延迟就为:200ms/KB。