Fiddler 抓包软件使用详解
Fiddler 是一款功能强大的 HTTP(S) 抓包工具,广泛应用于开发调试、性能优化、安全检测等领域。以下是其核心使用方法和测试场景中的关键要点:
一、基本概念与工作原理
定义与功能
Fiddler 是一个基于代理服务器的抓包工具,通过监听端口(默认 8888)截获并分析客户端与服务器之间的 HTTP/HTTPS 请求和响应。支持:1、实时监控网络流量
2、设置断点修改请求/响应数据
3、分析性能瓶颈(如加载时间、资源大小)
4、HTTPS 数据解密(需安装根证书)
工作原理:以代理服务器形式工作,客户端需将代理设置为 Fiddler 监听的 IP 和端口。
对 HTTPS 流量需启用解密功能(需在 Tools > Options > HTTPS 中配置并安装证书)。
二、核心使用步骤
安装与基础配置
下载安装包(建议通过官方渠道),选择自定义路径安装(如 D:\Programs\Fiddler)。
HTTPS 抓包配置:
勾选 Decrypt HTTPS traffic 和 Capture HTTPS CONNECTs。
首次使用需信任 Fiddler 根证书(通过浏览器访问 http://IP:8888 下载)。
移动端抓包设置
代理配置:
手机与 PC 需处于同一局域网。
手机 Wi-Fi 设置代理为 PC 的 IP 地址和端口 8888。
证书安装:
Android 7 以上需将用户证书转为系统证书(需 Root 权限)。
iOS 设备通过浏览器安装证书后需手动信任。
过滤与调试功能:
请求过滤:通过 Filters 标签设置域名、IP 或协议过滤规则。
断点调试:
·全局断点:在菜单栏选择 Rules > Automatic Breakpoints。
·局部断点:右键请求选择 Break on Request/Response 进行拦截修改。
三、测试场景中的实用技巧
接口调试与篡改:
·通过 Composer 标签伪造请求参数,模拟异常场景(如超时、错误状态码)。
·修改响应数据(如 JSON 返回值)验证客户端容错逻辑。
性能分析与优化:
·使用 Timeline 视图分析请求耗时和资源加载顺序。
·通过 Statistics 标签查看总请求数、数据传输量等指标。
弱网模拟测试
在 Rules > Performance 中设置网络延迟或带宽限制,模拟 2G/3G 等弱网环境。
数据导出与协作:导出请求为 curl 命令或 .saz 文件,便于复现问题或分享给团队。
四、常见问题与解决方案
HTTPS 抓包失败:
·检查证书是否安装并信任(需在手机和 PC 端均完成)。
·确保 Fiddler 的 HTTPS 配置选择 from remote clients only(仅抓取移动端流量)。
代理冲突:
1、关闭其他代理工具(如 Charles),避免端口占用。
2、重启 Fiddler 后重新设置代理。
移动端证书信任问题:
Android 10 及以上需通过系统设置手动导入证书。
iOS 需在 设置 > 通用 > 关于本机 > 证书信任设置 中启用证书。
五、测试面试要点总结
核心能力:熟悉 Fiddler 的代理机制、HTTPS 解密原理、断点调试方法。
场景应用:能结合具体测试需求(如接口测试、弱网模拟)设计抓包方案。
问题排查:掌握证书安装、代理冲突等常见问题的解决思路。