📖 前言:本文介绍Fiddler,一个强大的HTTP协议调试代理工具。文章详细讲解了Fiddler的安装步骤、基础操作、抓包技巧以及模拟测试等内容。
目录
- 🕒 1. Fiddler基础介绍
- 🕘 1.1 安装
- 🕘 1.2 基础操作
- 🕤 1.2.1 抓取请求
- 🕤 1.2.2 删除请求
- 🕤 1.2.3 过滤请求
- 🕒 2. 辅助定位bug
- 🕒 3. 构建模拟测试
- 🕒 4. 模拟弱网测试
- 🕒 5. 前端性能分析及优化
🕒 1. Fiddler基础介绍
Fiddler是一个http协议调试代理工具,它能够记录并检查所有你的电脑和互联网之间的http通讯,设置断点,查看所有的“进出”Fiddler的数据(指cookie、html、js、css等文件)
典型应用:
- Web网页、手机APP抓包
- 修改服务请求与响应
- 模拟弱网测试
- 前端性能分析及优化
🕘 1.1 安装
🔎 Fiddler官网下载
安装完成打开后会弹出一个窗口:
这是Fiddler打开后的一个警告消息,表示Windows系统上的“AppContainer”隔离技术可能会干扰来自沉浸式应用程序和Edge浏览器的流量捕获,建议使用Fiddler Classic的winConfig工具来启用流量捕获。Windows的AppContainer技术对于一些应用程序和浏览器的网络流量进行了隔离,Fiddler无法直接捕获到这些流量。点击“Yes”进入Windows官网详细了解,点击“No”关闭窗口,点击“Cancel”禁用这个警告。如果要启用这个功能,可以在Fiddler Classic 的工具栏中单击“winConfig”按钮可以启用流量捕获。
点击取消后,进入主页面:
fiddler默认只能抓http请求,如果要抓https还需要进行一下设置:
Tools → Options → HTTPS → 勾选Dectypt https traffic和Ignore server certificate errors(unsafe)
🕘 1.2 基础操作
🕤 1.2.1 抓取请求
🕤 1.2.2 删除请求
🕤 1.2.3 过滤请求
🕒 2. 辅助定位bug
抓包:
- 通过抓包工具截取观察网站的请求信息,更深入了解网站
- 通过抓包工具截取、观察网站的请求与返回信息,帮助我们进行BUG定位与描述
- 通过抓包工具拦截修改请求信息,绕过界面的限制,测试服务端的功能
小结:
- Web网页、手机APP抓包
- 检查接口地址是否有误
- 检查响应状态是否存在异常
- 检查接口传递参数
- 检查接口返回数据
🕒 3. 构建模拟测试
- 模拟发送请求,进行接口测试
应用场景1:需求文档中说明,某个接口限制同一个账号只能请求一次,同一个没备只能请求一次
应用场景2:存在页面输入限制,需要模拟特殊情况请求(例如特殊字符,空格等参数),测试程序处理机制
操作流程:
①.设置请求方法,请求地址,协议
②.设置请求header
③.设置请求body
④.发送请求
⑤.查看响应
- Mock接口返回数据,测试程序
应用场景1:需要验证接口数据能否正常处理,但程序处于开发过程中,后台无法对发送请求给出响应
应用场景2:需要验证程序针对404、500、502等不同状态的处理机制
🕒 4. 模拟弱网测试
日常进地铁、过隧道、进电梯等,如果网页或APP没有对各种网络异常进行兼容处理,那么用户在使用中可能会出现无响应弹窗,会造成客户端频繁地去发送请求,造成服务器压力过大。
1)网络环境:wifi、5G、4G、3G、2G
2)此时就需要借助fiddler进行环境的模拟:
① 打开弱网设置:打开fiddler -> Rules -> Performance -> Simulate Modern Speeds
② 打开设置弱网的脚本:打开fiddler -> Rules -> Customize Rules… -> 找到弱网设置的代码
注:数值的单位是传输1KB需要多少ms,也就是ms/KB
3)如何计算2G和3G的上下行速率?
🔎 2G、3G、4G网络制式上下行频率、速率比较
注:B是指Byte字节,b是指bit比特;则:1B=8b
运行商的x kb/s我们需要转换成KB/ms,也就是1/x/8*1000)KB/ms
。
如果计算太麻烦,直接搜即可:【关键词:弱网模拟2G和3G】
🕒 5. 前端性能分析及优化
在使用fiddler代理监听访问时,可以使用statistics分页去统计请求和响应的一些信息:
OK,以上就是本期知识点“Fiddler入门”的知识啦~~ ,感谢友友们的阅读。后续还会继续更新,欢迎持续关注哟📌~
💫如果有错误❌,欢迎批评指正呀👀~让我们一起相互进步🚀
🎉如果觉得收获满满,可以点点赞👍支持一下哟~
❗ 转载请注明出处
作者:HinsCoder
博客链接:🔎 作者博客主页