Fiddler安装:抓包工具Fiddler下载与安装
1.Fiddler开关
- 界面左下角,Capturing展示时,代表开关为开;
- 点击隐藏Capturing,代表开关为关,会停止抓包。
2.Filter过滤
-
工作中,我们可能只想展示自己公司项目的请求,这种情况下,可以使用Filters对主机进行过滤。
-
操作步骤如下:
(1)勾选Use Filters,使用过滤器;
(2)选择Hosts-Show only the following Hosts,展示以下主机的请求;
(3)输入需要展示的Host,使用分号隔开;
(4)点击Actions-Run Filterset Now。
- 注意:
(1)如果过滤本机,则需要127.0.0.1 和 localhost都需要写;
(2)百度由于有很多二级域名,故前面写*.;
(3)所有的HOST,都不需要带端口。
3.Inspectors 功能
- Inspectors 主要是查看请求报文、响应报文,是Fiddler最主要的功能,Inspectors 界面上半部分为请求报文,下半部分为响应报文。
4.断点功能详解
- Fiddler 可以通过设置断点修改请求,拦截响应数据,篡改响应。Fiddler有两种设置断点的方式:全局断点和局部断点。设置全局断点后,所有的 HTTP/HTTPS请求都会被拦截;而设置局部断点后,仅针对设置断点的请 求进行拦截。常用的是局部断点。
- 全局断点,所有的 HTTP/HTTPS 请求都会被拦截。
- 局部断点,是针对某条特定的请求设置断点进行调试。在命令行中输入需要设置断点的请求指令,也是常用的一种断调试方式。常用断点调试命令 如下:
bpu 空格+ 接口地址,回车 #请求前断点
bpafter 空格+ 接口地址,回车 #响应后断点
bps 空格+ 响应状态码,回车 #HTTP响应状态码断点
bpm 空格+ 请求方式,回车 #请求方式断点
bpu+回车 #取消所有请求前断点
bpafter+回车 #取消所有响应后断点
bps+回车 #取消所有响应状态码断点
bpm+回车 #取消所有请求方式断点
- 案例:某输入框需做字符数限制,不可超过100个字符,前端已做限制,测试接口是否做限制,可以使用请求前断点,篡改请求参数。
(1)在Fiddler左下角输入命令 bpu 空格+ 接口地址,回车 ;
(2)输入框填写数据,提交;
(3)此时我们可以看到Fiddler已经拦截该请求,修改请求参数,输入超过100字符的数据,点击【Break on Rep】、【Run to Comp】;
(4)观察响应报文,我们发现请求成功,这就说明接口层未作字符数限制,可以提交bug给后端。
- 同样手机号,邮箱等测试接口是否做格式校验,我们也可以用这个方法。
5.弱网测试
- (1)在Fiddler中启动弱网
Rules -> Performance -> 勾选Simulate Modem Speed,勾选之后网络速度会慢下来,因为系统里有预设的网络参数值。
- (2)设置网络参数
(1)Rules -> Customize Rules,打开代码编辑弹框;
(2)Ctrl+f关键字查找m_SimulateModem,设置弱网参数值;
- (3)设置完成后,保存。
- 注意保存后,步骤1勾选的Simulate Modem Speed会被取消勾选,需要重新勾选一下再进行测试。
写在最后:
平时工作中使用Fiddler的场景:
(1)测试前端极限场景,例如:测试超长字符串展示是否无异常,通过抓包篡改响应数据快速测试;
(2)测试验证码是否限制1分钟才能重发,可以使用Fiddler Replay功能快速测试;
(3)通过分析请求和响应判断是前端bug还是后端bug;
(4)模拟弱网环境;
(5)抓包篡改请求数据,测试接口。
由于本人水平有限,有错误欢迎及时指出~