首页
学习
活动
专区
工具
TVP
发布

那些年,我们用过的fiddler

在测试中,不管是做手工测试,还是接口测试,我们都需要查看后端返回的数据。有的时候,我们也需要调试,或者mock一下后端的返回,来验证前端是否达到预期。

为了捕获这些请求,抓包工具不可少。熟练掌握一些抓包工具,可以方便我们测试,调试,分析问题。

市面上的抓包工具不少,浏览器本身就自带简单抓包功能。如果需要调试,需要抓包利器。

我们常见的抓包工具有Wireshark,Fiddler, Charles等。

相比于商业工具Charles, 免费就是Fiddler的一大优势,何况它还这么好用。

fiddler是最强大的web调试工具之一,他能记录所有客户端和服务器的http/https请求以及响应,允许你监视,允许你设置断点调试,甚至篡改请求和响应。

下面简单说说测试中Fiddler常用的功能。一般我们用到的也就是:抓包,发请求,断点,替换等功能:

抓包:

我们可以抓web的包,也可以在移动设备上设置代理,抓移动设备上接口的包(设置proxy,请自行搜索)。

当我们开始抓包时候,会把浏览器或者设备上所有的包都抓下来,包括资源文件,很多包是我们不想要的,或者想过滤掉的。可以设置Filter.

Fiddler过滤指定域名

切换到fiddler右侧窗口的Filters选项卡,勾选顶部的“Use Filters”,找到Hosts区域,设置以下三个选项:

也可以如图上所标示的,用”Show only if URL contains”来过滤。

可以用一些命令来实现filter的功能

select 命令

选择所有相应类型(指content-type)为指定类型的HTTP请求,如选择图片,使用命令select image.而select css则可以选择所有相应类型为css的请求,select html则选择所有响应为HTML的请求

cls 命令:清除

=status命令

选择响应状态等于给定状态的所有HTTP请求。

例如,选择所有状态为200的HTTP请求:

=200

?text命令

选择所有 URL 匹配问号后的字符的全部 session

?englishtown

size 和

选择响应大小大于某个大小(单位是b)或者小于某个大小的所有HTTP请求

@host命令

选择包含指定 HOST 的全部 HTTP请求。例如:@csdn.net

选择所有host包含csdn.net的请求(有没有像我们社交软件中@某人的意思?)

发请求:

发请求比较简单,在Composer下把要发请求的数据准备好,直接发就可以了。

断点功能:

Bpafter, Bps, bpv, bpm, bpu

这几个命令主要用于批量设置断点

Bpafter xxx: 中断 URL 包含指定字符的全部 session 响应

Bps xxx: 中断 HTTP 响应状态为指定字符的全部 session 响应。

Bpv xxx: 中断指定请求方式的全部 session 响应

Bpm xxx: 中断指定请求方式的全部 session 响应。等同于bpv xxx

Bpu xxx:与bpafter类似。

当这些命令没有加参数时,会清空所有设置了断点的HTTP请求。

当断点时,敲个go, 也会跳过断点

清除断点是,输入bpu,回车,同时在底部也会看到断点请求被clear

响应后断点(after requests): bpafter

论坛登录接口:https://passport.cnblogs.com/user/signin

在命令行输入:bpafter https://passport.cnblogs.com/user/signin 回车

3. 登录博客园,会发现已经拦截到登录后服务器返回的数据了,此时可以修改任意返回数据

4. 取消断点,在命令行输入: bpafter 回车就可以了

如上图,当我们设置好断点后,再次请求,请求会停住。

可以通过编辑数据,发送请求,就达到了mock数据的目的了。

替换:

对请求的某个ip或域名进行重定向

打开fiddler-tools-hosts

如我有IP223.xx.xx.101:8080,重定向到223.xx.xx.99:8080上去,

只需要在里面填入即可:223.xx.xx.101:8080 223.xx.xx.99:8080

自此,所有发送到223.xx.xx.101:8080的请求都将重定向至223.xx.xx.99:8080

对请求的某个域名进行替换

替换文件,或者在线替换

点击AutoResponder,然后钩上Enable rules

在最下面的最后一行的下拉框里面,选择你想要做的操作。

Fiddler的功能很强大,这里只列出了部分常用的功能。多操作,就能熟练掌握。

作者简介:

Snake, 人称安蜀黍,专职软件测试10几年,测试界的老司机。

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20171221G0Z5J400?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券