软件测试 | 手把手教你如何使用 Fiddler 抓包工具(电脑+手机端)

嘿。大家好,我是4U:
做过 APP
测试的同学都会接触抓包工具,通过抓包工具可以获取到客户端与服务端接口的交互数据,在实际测试APP的过程中,我们往往会发现服务端返回
的参数字段错误、数据统计错误等问题,通过抓包可发现这些问题,对开发修复 BUG 提供有效的帮助。

那么今天我来给大家介绍一下抓包工具 Fidder工具的安装与使用。

Fidder 简介:

一、Fidder 下载安装

打开官 ,官 下载地址是 https://www.telerik.com/download/fiddler 打开以后选择你的相关信息如下图:

二、Fidder 配置

Fiddler 安装后,设置的端口默认为 8888,当 Fiddler 启动后,默认将 IE 的代理设为了 127.0.0.1:8888,而其他如火狐浏览器需要手动设置代理后才可 以抓包。设置内容如图:

  • 打开 Fiddler 菜单项 Tools->Options->HTTPS,
  • 勾选 CaptureHTTPSCONNECTs,点击 Actions,
  • 勾选 DecryptHTTPStrafficfnlgnoreservercertificateerrors 两项,点击 OK。

(首次点击会弹出是否信任 fiddler 证书和安全提示,直接点击 yes 就 行)。

(2) 手机端监听配置前提:

确保手机和电脑处于同一 络中,获取到电脑的 IP 地址:通过 cmd, 输入 ipconfig 查询,或 络共享中 ip4 找到

步骤五: 手机设置代理,手机系统设置-无线 络-选择同一个 络-代理设置- 代理选择手动,服务器对应 fiddler 的电脑 ip 地址,端口对应 fiddler 的端口 ,设置后保存。

三、Fidder 的使用

1、 要使用 Fiddler 进行抓包,首先需要确保 Capture Traffic 是开启的(安装后是默认开启的),勾选 File->Capture Traffic,也可以直接点击 Fiddler 界 面左下角的图标开启和关闭抓包。

  • Result:HTTP 状态码
  • Protocol:请求使用的协议,如 HTTP/HTTPS/FTP 等
  • HOST:请求地址的主机名或域名
  • URL:请求资源的位置
  • Body:请求大小
  • Caching:请求的缓存过期时间或者缓存控制值
  • Content-Type:请求响应的类型
  • Process:发送此请求的进程 ID
  • Comments:备注
  • Custom:自定义值

3、 每个 Fiddler 抓取到的数据包都会在该列表中展示,点击具体的一条数据包 可以在右侧菜单点击 Insepector 查看详细内容。主要分为请求(即客户端发出 的数据)和响应(服务器返回的数据)两部分。

(1) Client 头域:

  • Accept: text/html, application/xhtml+xml, image/jxr, / –浏览器 端可以接受的媒体类型
  • Accept-Encoding: gzip, deflate –压缩方法
  • Accept-Language: zh-CN –语言类型
  • User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.79 Safari/537.36 Edge/14.14393 –客户端使用的操作系统和浏览器的名 称和版本

(2) COOKIE 头域:

  • 将 cookie 值发送给服务器

(3) Transport 头域:

  • Connection:当 页打开完成后,客户端和服务器之间用于传输 HTTP 数据 的 TCP 连接是否关闭。keep-alive 表示不会关闭,客户端再次访问这个服务 器上的 页,会继续使用这一条已经建立的连接;close 表示关闭,客户端 再次访问这个服务器上的 页,需要重新建立连接。

  • HOST:主机名或域名,若没有指定端口,表示使用默认端口 80。

5、 HTTP Response Header:继续以百度为例,如图所示:

软件测试 | 手把手教你如何使用 Fiddler 抓包工具(电脑+手机端)

总结每天都有新姿势

通过Fiddler可以抓取请求和响应参数,通过对参数进行分析,可以定位是前端还是后台问题。 例如我们在测试登录接口时,输入了正确的手机 和
密码,但前端提示“请输入正确的用户名和密码”;仅仅通过界面提示我们只能描述 bug 表象,但不能分析出问题原因。
假设通过抓包我们发现是由于前端参数 名错误或参数值为空,从而导致后台 错。这个时候我们将 bug
指向前端开发人员,并将参数数据和接口文档中对应的 文数据作为附件上传,是不是可以提高 bug 的解决效率呢Fiddler
在实际的功能测试中有很大的作用,一方面帮助我们更好的了解某个业务中客户端和服务器端是通过哪些接口进行请求的,从而更好的了解代码逻辑;另一方面,我们还可以通过响应数据判断哪里出现了问题,
例如可能服务器程序挂了,导致前端 “服务器故障”,这时我们通过抓包发现响应数据返回
502,这时我们可以手动去重启服务或是联系运维重启服务,从而 提高问题的解决效率。

CONTACT US / 联系我们

BILIBILI/哔哩哔哩:乐搏软件测试

喜马拉雅/官方账 :乐搏软件测试

免费分享学习资料 lebo5207

学习资料+教学视频+安装包+工具包

点击底部 “ 点赞 + 评论 + 收藏 ” 来一次说点就点的一键三连哦!

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2021年10月4日
下一篇 2021年10月4日

相关推荐