Fiddler学习(二)

Fiddler能干什么(简单罗列)

抓一下百度,发现没有抓到(HTTPS),下图这些都是建立通道的连接

抓其他的,成功了

菜单栏

1:修改端口

2:不想做系统代理,取消勾选

3:设置规则

工具条

http://test.lemonban.com/ningmengban/app/login/login.html抓一个提交登陆的请求,输入不存在的账号

1:备注

作用:可以备注一下错误信息,选中一个,作为文件导出给开发去看

也可以导出成一个附件

2:重放

选中这个请求,点击Replay,会再次请求一次

也可以选中这个请求,点击R,然后就能请求

如果要对这个请求设置次数,可以shift+R,输入次数,点确定就行了

这种也叫重放攻击,可以对服务器做压力测试(注意:这种是串行的,而像jmeter那种是并发的)

3:删除请求

删除选中的请求:选中-delete

删除其他的请求:选中,shift+delete

4:清除

清除全部,清除图片,清除中间连接,清除非200,清除非浏览器(前五个)

5:请求执行

重放之前设置一个断点,选择请求,点击下方

点R运行,会发现请求在发送到服务器之前已经停止了

点击go,请求继续,可以看到有信息了

6:流模式

7:解码

有一些内容从服务器发回来是会做编码做压缩的,所以想看到可以用这个,不过这个是对所有请求直接做解码

单点这个只是对该请求解码

8:选择想要监听的程序

9:查找

10:清除缓存

11:编码解码工具

可以拿来做接口测试

12:本机的信息

监控面板

1:加一列,IP

参考:https://www.cnblogs.com/kefanwu/p/9522864.html

保存重启,就看到了(上面的列是可以拖动的)

对列也有相应的操作(最后一个是自定义列)

2:顺序

点击相应的列就行

命令行+状态栏

1:快速执行命令

可以输入help去学习一下

2:设置和取消代理

有这个就是已经设置,点击可以取消

3:断点(都是在Fidder那里)

响应前断点(还没发给服务器)

响应后断点(服务器返回未到客户端)

辅助标签+工具

1:查看性能信息

请求数
Request Count:   1
发送字节数
Bytes Sent:      505		(headers:505; body:0)
接收字节数
Bytes Received:  5,692		(headers:261; body:5,431)

ACTUAL PERFORMANCE
--------------
客户端连接
ClientConnected:	23:51:33.069
ClientBeginRequest:	23:51:33.099
GotRequestHeaders:	23:51:33.099
ClientDoneRequest:	23:51:33.099
Determine Gateway:	0ms
DNS解析时间
DNS Lookup: 		4ms
TCP/IP握手时间
TCP/IP Connect:	40ms
HTTPS Handshake:	0ms
ServerConnected:	23:51:33.144
FiddlerBeginRequest:	23:51:33.144
ServerGotRequest:	23:51:33.144
ServerBeginResponse:	23:51:33.196
GotResponseHeaders:	23:51:33.196
ServerDoneResponse:	23:51:33.196
ClientBeginResponse:	23:51:33.196
ClientDoneResponse:	23:51:33.196

2:检查器

3:自动响应器

例子:生产环境出现了问题,一般在生产环境去做调试是不合理的,可以使用自动响应器将这个请求拦截下来,然后重定向到本地或者指定的响应地方。

比如更换图片(复制一下图片地址)

这里报404是因为Fiddler拦截了这个请求之前使用了内置的404给它返回,在页面可以看到图片消失了

也可以给它返回一个本地的图片

可以看到返回了本地的图片

思考:如果在公共场合连接不知名的wifi,如果它设置了代理,它可以截获你的请求,然后串改,返回他给你的信息(钓鱼)

例子:

现在是正常的一个网站,里面有很多js文件

双击复制到本地的一个txt文件里面,改为js格式

通过拖动的方式

重定向到本地的js

当点击是,就跳转到骗子的页面去了(这里乱码不管)

当然也可以做mock(模拟),如果开发有个接口没开发好,我要做测试,我就可以模拟这个请求

比如登录接口没做好

先去抓一下登录的请求

可以看到默认的响应是这个

将请求还是拖进规则里面,去编辑响应

当然如果是没开发好,这里的信息都是自己编辑的

再去抓一下,响应内容变了

当然也可以编辑响应去看界面的展示情况,可以做到功能测试没法做到的极端测试

比如某一个响应,我想它返回的数据是没有数据,比如app的列表,我想看没有数据时的展示情况,功能测试的话就要删掉全部数据,这样就不是很好,而Fiddler可以在不删数据情况下去做到极端测试

比如进入登录页面,显示是一个图片

页面就只显示一个图片了

4:设计器(设计请求用的)

这是由Fiddler发出的请求,是一个简单的发包工具(发HTTP数据包)

怎么做接口测试?比如登录的请求,拖动

我修改用户名,然后发起请求

然后发现居然可以请求

这是一个bug,因为如果用这个账号密码去页面登录,是请求不了的,提示用户名错误,所以接口测试能发现黑盒测试发现不了的bug

这里就是绕过了前端,去请求了一下数据库,后端的校验不合理,本来是错误的手机号,就不应该去查数据库

也可以选多个请求,点击3次可以选中然后去执行

5:过滤器

帮助我们过滤请求用的

1:主机的过滤

默认不选、局域网、广域网

默认不选、隐藏以下主机、只展示以下主机、标记以下主机

2:客户端进程的过滤

只抓取哪个进程的包、只展示IE

3:请求头的过滤

只展示URL包含(如baidu)的请求、隐藏..、标记..、删除..、设置...

4:断点

post请求采取断点、get请求、ajax请求、内容类型是什么内容

1)全局断点

请求前断点、响应后断点

相应前断点,可以修改内容去做一个数据的篡改,点击go运行

相应后断点也一样,我可以改成其他的

可以做极端测试,把返回的数据删掉就行了,看没有数据下有没有提示(空状态)

也可以做断网测试,断点到那个超时的时间,就可以看断网下的情况

2)局部断点

请求前断点命令:bpu 内容

取消请求前断点:bpu

相应后断点:bpafter 内容

取消相应后断点:bpafter

猜你喜欢

转载自blog.csdn.net/weixin_42717928/article/details/106505427