Fiddler安装与使用教程(2) —— 软测大玩家

在这里插入图片描述

 
 

在这里插入图片描述
😏作者简介:博主是一位测试管理者,同时也是一名对外企业兼职讲师。
📡主页地址:【Austin_zhai】
🙆目的与景愿:旨在于能帮助更多的测试行业人员提升软硬技能,分享行业相关最新信息。
💎声明:博主日常工作较为繁忙,文章会不定期更新,各类行业或职场问题欢迎大家私信,有空必回。

在这里插入图片描述

 
 

阅读目录

  • 1. 接上回
  • 2. 基础使用
  • 3. 移动端抓包
  • 4. 命令行
  • 5. 注意点

1. 接上回

在这里插入图片描述
  说到网络调试工具,相信在软件测试行业中的小伙伴几乎都听过Fiddler的名字,没错,它与Wireshark,Charles,Tcpdump都是市面上主流的网络调试工具。而作为一个合格的软件测试工程师,网络相关的基础技能与知识又是不可或缺的一部分,上一篇我们介绍了Fiddler这款软件的安装与基础项配置的内容,接下来博主就继续为大家带来Fiddler日常中的一些高频操作与功能。

 
 
 

2. 基础使用

在这里插入图片描述
  我们先来简单的看一下基础使用,这里用C站来做例子,我们先在本地访问一下各自的博客首页,因为我们没有在Fiddler中做任何的过滤,一定会有大量的session出现在会话列表中,不过无妨,先找到之前访问的session选中之后来看一下。

在这里插入图片描述
 

  就如上图所展示的,上面是一个get类型的请求,在Fiddler的HTTP请求区域中可以看到由两个部分组成,一个就是我们的请求路径,一般称为Request Line;另一个就是请求头,也就是Header。这个就是最最基本的请求的组成。具体的消息结构就不再这里扩展了,大家可以自行学习。

 
 
 

  那么对于get类型的请求,服务器就会根据你的请求路径进行判断,并返回给客户端对应的响应。如下图,对于响应可以分为三个部分,第一个就是我们的http状态码,第二个是响应头,最后则是返回的响应消息体。在我们的接口测试中也同样是根据返回的响应中的这三个部分中的特定内容来进行断言和用例执行的。

在这里插入图片描述

 
 
 

  相对来说POST类型的请求相比GET多了Body部分,所以在请求区域中可以看到每个post请求所带的入参。
在这里插入图片描述

 
 
 

  同样的服务器的响应依旧是之前的消息体格式,这个是不会有任何差别的。
在这里插入图片描述

 
 
 

3. 移动端抓包

在这里插入图片描述
  我们在配置移动端之前先查看自己的本机内网IP,我们在Fiddler首页右上角用鼠标悬停查看IP信息,端口信息在上一篇的文章中已经配置和介绍过了,默认为8888。

在这里插入图片描述

 
 
 

  我们这里以安卓手机为例,先进入到手机的设置界面,找到WLAN选项,找到与你Fiddler服务本机同网段的无线网络并连接,长按当前的无线网络,在菜单中选择修改网络,然后勾选显示高级选项,在代理中选择手动,接着就能看见代理下会有几个新的选项出现,填写的内容可以参照下图;服务器主机名内填写启动Fiddler本机的IP,服务器端口如果没修改过的话填写默认的Fiddler服务端口8888,改了就自行修改即可。
在这里插入图片描述

 
 
 

  修改完移动端的网络代理后,我们就可以在手机浏览器中输入Fiddler服务的地址,格式为IP+PORT的形式,博主这边访问的就是10.31.1.195:8888;这里需要注意的是很多新手很容易将端口前的冒号输入成中文标点符号的形式,仔细观察冒号前后的空余长度就可以发现,这里必须是英文的。

  输入访问url后就可以在浏览器中正常的访问到Fiddler服务了,如果看到下图的画面,那说明你的移动端网络与Fiddler服务是正确配置了的。

在这里插入图片描述

 
 
 

  接下来我们就需要在这里下载所需的根证书,点击画面上的超链接FiddlerRoot certificate将根证书下载到移动端本地。下载完毕后我们直接打开根证书,界面会跳转至安卓的证书安装器,我们这里的证书名称可以随意填写,但如果你的测试手机中需要安装多个Fiddler根证书则最好区分命名,不然后期管理起来会比较费神。凭证用途选择默认的VPN与应用,最后点击确定即可。

在这里插入图片描述

 
 
 

  设置完成之后,如果没有在Fiddler做任何session过滤的话应该可以看到移动端上的数据已经通过Fiddler进行捕获了。这里大家可以根据自己的业务与APP请求地址进行过滤以确保不会出现太多的无用信息。

  这里还需要强调一下iOS的移动端设置,除了上面说的根证书安装步骤之外还需要多做一步操作,在我们的设置界面中选择通用 -> 关于本机 -> 证书信任设置,在该选项界面中找到对应的Fiddler根证书并开启,这样才可以使Fiddler正确的捕获到iOS移动设备上的数据。

在这里插入图片描述

 
 

在这里插入图片描述

 
 
 

4. 命令行

在这里插入图片描述
  虽然命令行在Fiddler的整个界面中只占了极小的一部分,不注意看都有可能被忽略掉,但它在我们的Fiddler日常使用中的出现频率却是极高的。能用好命令行的话可以大大提高我们的捕获与分析效率,相较于直接在UI上点点点要来的效率很多。

  接下来我们就来看几个在日常工作中经常会用到的命令。

 

? :问号用来做一些关键字的搜索与匹配,我们在问号后面输入一些你要搜索的关键字符串,所有匹配的都会被高亮

在这里插入图片描述

 
 
 

= :等号后面是用来连接HTTP方法与状态码,以达到高亮指定条件的效果。

在这里插入图片描述

 
 
 

">"与“<” :大于与小于号,简单来说这两个符号后面连接数字,来指定大于或小于当前数字的消息体大小。
这里我们指定了消息体小于3000

在这里插入图片描述

 
 
 

@ :@符号后连接的是host或url,我们可以指定任意字符来对host与url进行快速定位。
这里我们@后连接csdn

在这里插入图片描述

 
 
 

cls、clear :用来清除当前的会话列表中的所有session记录,也可以用快捷组合键Ctrl + X来实现。

 

dump :将目前会话列表中的所有会话进行压缩保存,存储路径为:C:\Users\用户名\Documents\Fiddler2\Captures

在这里插入图片描述

 
 

bps :bps后连接需要中断的HTTP状态码,输入后会立即中断所有当前指定状态码的session。

 

bpv :用法与bps相同,之后不过连接的是HTTP请求方法,输入后会立即中断所有当前指定方法的session。

 

g、go :放行当前所有中断的session。

 

start、stop :开始Fiddler与关闭Fiddler的数据流量捕获。

 

show、hide :显示与隐藏Fiddler主界面。

 

select :select后面需要连接指定的响应类型,输入后高亮所匹配中的session。

 

keeponly :这个与select类似,只不过keeponly会将不符合条件的其他session从会话列表中删除。

 

urlreplace :urlreplace与python中的replace功能类似,后面连接两个参数,第一个为原字符串,第二个为替换后的字符串。如果不带参数直接输入urlreplace则代表恢复最初的样式。

 

quit :就是字面意思,输入后直接关闭Fiddler。

 
 
 

5. 注意点

在这里插入图片描述

  1. 我们在查看某些响应的时候,会发现body中的信息是乱码,这是因为内容被压缩的关系,可以看到类型额为gzip。我们可以点击HTTP响应区域上方的Response body is encoded. Click to decode来对body进行解码,或者直接点击工具栏上的Decode按钮来进行解码。这样我们就可以直接看到对应的内容了。
    在这里插入图片描述

 
Decode后的body内容展示。
在这里插入图片描述

 
 

  1. 我们日常中除了使用命令行的?命令之外,还可以使用通用搜索,快捷键与windows的文件操作一致,为Ctrl+F,在这里面我们同样可以搜索关键字来快速定位与高亮你所需要搜索的session,而且这里的高亮还可以设置特定的颜色。
    在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/123238.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

数据结构例题代码及其讲解-递归与树

树 ​ 树的很多题目中都包含递归的思想 递归 递归包括递归边界以及递归式 即&#xff1a;往下递&#xff0c;往上归 递归写法的特点&#xff1a;写起来代码较短&#xff0c;但是时间复杂度较高 01 利用递归求解 n 的阶乘。 int Func(int n) {if (n 0) {return 1;}else …

码云使用记录

码云使用记录 主要步骤 1、https://gitee.com 注册 2、下载Git 3、配置SSH 4、创建远程仓库 5、切到本地项目目录下将本地项目推到远程 前两步根据提示进行即可&#xff0c;下面从第三步开始讲解 3、配置SSH&#xff08;用于提交代码和更新代码&#xff09; https://gitee.…

行人属性识别数据集PA100K介绍

本文介绍pa100k数据集&#xff0c;是从GitHub上paddleCLA工程中提供的路径下载&#xff0c;针对该数据集进行介绍&#xff1a; 01 - 图像信息 训练集 - 80000张图像验证集 - 10000张图像测试集 - 10000张图像 02 - 标签信息 属性1&#xff1a;有无帽子 - [0] 属性2&#xf…

CP Autosar-Ethernet配置

文章目录 前言一、Eth层级结构介绍二、Autosar实践2.1 ETH Driver2.2 Eth InterfaceEth Interface Autosar配置2.3 TcpIp模块Eth TcpIp Autosar配置2.4 SoAdEth SoAd配置前言 因汽车E/E架构和功能的复杂度提升而带来的对车辆数据传输带宽提高和通讯方式改变(基于服务的通讯-S…

London Dock丨伦敦一区的房产明星,拥揽泰晤士河美景,尽享都市奢华生活

生活在伦敦一区&#xff0c;似乎就意味跻身上流阶层 皆是精英环绕&#xff0c;也为下一代创造了极好的社区氛围 所谓“一方水土养一方人”&#xff0c;泰晤士河穿过的伦敦 也孕育着伦敦人的礼貌绅士与严谨认真。 河流&#xff0c;是城市发展的源头。 源远流长的塞纳河&…

Text文件在MATLAB中读写示例基础

背景 为了便于和外部程序进行交换&#xff0c;以及查看文件中的数据&#xff0c;也常常采用文本数据格式与外界交换数据。在文本格式中&#xff0c;数据采用ASCII码格式&#xff0c;可以使用字母和数字字符。可以在文本编辑器中查看和编辑ASCII文本数据。MATLAB提供了导入函数…

spring boot项目上传头像

应用还是验证码使用的原理&#xff1b;但是代码逻辑却有所不同。 逻辑前端传给后端&#xff0c;然后写入本机磁盘去&#xff0c;文件名用uuid避免重复。写完就可以顺带把文件名保存到数据库里。上传就这样子。 怎么取用的&#xff1b;还是通过配置映射的方式&#xff1b;通过sr…

Vue3【Provide/Inject】

前言 自从使用了Provide/Inject代码的组织方式更加灵活了&#xff0c;但是这个灵活性的增加伴随着代码容错性的降低。我相信只要是真的在项目中引入Provide/Inject的同学&#xff0c;一定一定有过或者正在经历下面的状况&#xff1a; 注入名&#xff08;Injection key&#x…

Ubuntu 22.04 桌面美化成Mac风格

安装插件 sudo apt install gnome-tweaks gnome-shell-extensions -y安装完成后在应用中可以搜索到一个名为&#xff08;tweaks/优化&#xff09;的应用。 下载安装主题、图标 主题 git clone https://github.com/vinceliuice/WhiteSur-gtk-theme.git cd WhiteSur-gtk-them…

iOS开发Swift-9-SFSymbols,页面跳转,view屏幕比例,启动页-和风天气AppUI

1.创建项目 2.设置好测试机型,App显示名称,以及关闭横向展示. 3.下载SF Symbols. https://developer.apple.com/sf-symbols/ 右上角搜索 search ,可以找到很多系统自带图标.选择喜欢的图标,拷贝图标的名字. 插入一个Button,在Image中粘贴图标名称并选择,即可将Button变成想要的…

Kafka3.0.0版本——文件存储机制

这里写木目录标题 一、Topic 数据的存储机制1.1、Topic 数据的存储机制的概述1.2、Topic 数据的存储机制的图解1.3、Topic 数据的存储机制的文件解释 二、Topic数据的存储位置示例 一、Topic 数据的存储机制 1.1、Topic 数据的存储机制的概述 Topic是逻辑上的概念&#xff0c…

Verilog 代码规范

搬自https://hitsz-cslab.gitee.io/cpu/home/codingstyle/ 1. 标题命名规范 1.1 标题文件命名规范 仿真文件应使用后缀“_sim”&#xff0c;如modulename_sim&#xff1b; 测试文件应使用后缀“_tb”&#xff0c;如modulename_tb。 1.2 模块命名规范 一个文件只定义一个m…

CPU及并发

2.9G Hz,即每秒进行2.9G次运算(即29亿次) 几个命令 us: 用户使用的cpu sy: 系统(内核)使用的cpu id: idle,即空闲cpu wa: 等待I/O的cpu st: 开虚拟机后会有的一个指标,即虚拟机的cpu使用率 一个进程拥有一整套虚拟地址空间,该进程的所有线程都共享该地址空间. 线程是CPU运算的最…

ZYNQ上的简单 FSK 基带发射器

绪论 由于某种需求需要生成正弦波&#xff0c;因此使用 C 应用程序中的sin()函数来计算单位圆的幅度值&#xff0c;然后将该幅度值转换为 AD9717 的适当 DAC 代码&#xff08;当然将每个角度值转换为弧度&#xff09;。 能够使用DAC生成简单的正弦波&#xff0c;下一个想法就是…

QT QToolBox控件使用详解

本文详细的介绍了QToolBox控件的各种操作&#xff0c;例如&#xff1a;新建界面、添加页签、索引设置当前项、获取当前项的索引、获取当前项窗口、获取索引值是int的窗口、移除索引值项、获取项的数量、获取指定索引值、设置索引项是否激活、获取索引值项是否激活、设置项的图标…

vue+antd——table组件实现动态列+表头下拉选择功能——技能提升

Table 表格 展示行列数据。 何时使用 当有大量结构化的数据需要展现时&#xff1b; 当需要对数据进行排序、搜索、分页、自定义操作等复杂行为时。 最近在写vueantd的框架&#xff0c;遇到一个需求&#xff1a;就是要实现table表格的动态列&#xff0c;并且相应的表头要实现下拉…

el-date-picker 禁止选择当前年之前或者之后的年份

<el-date-picker v-model"ruleForm.years" type"year" :disabled-date"pickerOptions"placeholder"请选择获奖年度" class"wih-650p" value-format"YYYY" />之前 const disabledDateFun (time: any) >…

用户案例 | 蜀海供应链基于 Apache DolphinScheduler 的数据表血缘探索与跨大版本升级经验

导读 蜀海供应链是集销售、研发、采购、生产、品保、仓储、运输、信息、金融为一体的餐饮供应链服务企业。2021年初&#xff0c;蜀海信息技术中心大数据技术研发团队开始测试用DolphinScheduler作为数据中台和各业务产品项目的任务调度系统工具。本文主要分享了蜀海供应链在海…

YOLO目标检测——火焰检测数据集+已标注xml和txt格式标签下载分享

实际项目应用&#xff1a;火灾预警系统、智能监控系统、工业安全管理、森林火灾监测以及城市规划和消防设计等应用场景中具有广泛的应用潜力&#xff0c;可以提高火灾检测的准确性和效率&#xff0c;保障人员和财产的安全。数据集说明&#xff1a;YOLO火焰目标检测数据集&#…

Python接口自动化封装导出excel方法和读写excel数据

一、首先需要思考&#xff0c;我们在页面导出excel&#xff0c;用python导出如何写入文件的 封装前需要确认python导出excel接口返回的是一个什么样的数据类型 如下&#xff1a;我们先看下不对返回结果做处理&#xff0c;直接接收数据类型是一个对象&#xff0c;无法获取返回值…