【测试】——Fiddler入门

news2024/10/28 11:22:11

📖 前言:本文介绍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. 模拟发送请求,进行接口测试
    应用场景1:需求文档中说明,某个接口限制同一个账号只能请求一次,同一个没备只能请求一次
    应用场景2:存在页面输入限制,需要模拟特殊情况请求(例如特殊字符,空格等参数),测试程序处理机制

操作流程:
①.设置请求方法,请求地址,协议
②.设置请求header
③.设置请求body
④.发送请求
⑤.查看响应

在这里插入图片描述在这里插入图片描述

  1. 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
博客链接:🔎 作者博客主页

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

[oeasy]python038_ range函数_大小写字母的起止范围_start_stop

range函数_大小写字母的起止范围_start_stop 回忆上次内容 所有字符 都有序号 就连 空格 也不例外 空格 序号32是 print函数中 sep参数的 默认值 字符 在计算机中 用数字序号 来 存储表示 字符序号 有规律 a 对应 97b 对应 98c 对应 99 连续字母 对应 连续序号 似乎应该是 天经…

SOLID - 接口隔离原则(Interface Segregation Principle)

SOLID - 接口隔离原则(Interface Segregation Principle) 定义 接口隔离原则(Interface Segregation Principle,ISP)是面向对象设计中的五个基本原则之一,通常缩写为SOLID中的I。这一原则由Robert C. Martin提出&…

校园气膜体育馆:学生锻炼与成长的新空间—轻空间

在现代教育中,学生的身心健康日益受到重视,校园体育设施的建设成为学校发展的重要一环。为更好地满足学生在节假日锻炼与学习的需求,校园气膜体育馆应运而生,成为校园内一处崭新的活力空间。 打破场地限制,打造优质运动…

LeetCode 热题 100之矩阵

1.矩阵置0 思路分析:使用标记数组 记录需要置为 0 的行和列:使用两个布尔数组 zeroRows 和 zeroCols 来记录需要置为 0 的行和列两次遍历 第一遍遍历整个矩阵,找到所有为0的元素,并更新zeroRows和zeroCols;第二遍遍历…

快速入门HTML

欢迎关注个人主页:逸狼 创造不易,可以点点赞吗 如有错误,欢迎指出~ 目录 第一个html文件 标签 h1~h6 p >段落标签 br > 换行标签 img >图片标签 a >超链接标签 表格标签 表单标签 表单控件 form表单 ⽆语义标签:div&span 综…

虚拟现实在制造业中的应用

当你想到制造业中的虚拟现实技术时,你脑海中闪过的第一个念头是什么?从目前来看,只需几年时间,制造业就将离不开虚拟现实技术的帮助。实施虚拟现实应用对制造业来说都有诸多好处。通常情况下,制造设施都是由各种机器组…

右键以vscode打开目录的时候出现找不到应用程序

出现这个问题的主要原因,大概率可能是因为你移动了vscode的安装路径导致的。 解决办法 打开注册表:通过cmd 打开regedit 然后搜索:计算机\HKEY_CLASSES_ROOT\Directory\Background\shell 这个两个参数可以自己比对一下,主要需要检…

【再谈设计模式】单例模式~唯一性的守护者

一、引言 在软件工程中,软件开发,设计模式是提高代码复用性和可维护性的有效工具。单例模式(Singleton Pattern)作为一种创建型设计模式,旨在确保一个类只有一个实例,并提供对该实例的全局访问。这一模式在…

unity 导入的模型设置详谈

文章目录 1.Model 模型1.1 Scene:场景级属性,例如是否导入灯光和照相机,以及使用什么比例因子1.2 Mesh:网格的属性1.3 Generate :与几何相关的属性,用于处理拓扑,UV和法线 2.Rig 骨骼3.Animatio…

C语言小游戏3——扫雷

扫雷游戏 1. 扫雷游戏的功能说明 使用控制台实现经典的扫雷游戏游戏可以通过菜单实现继续玩或者退出游戏扫雷的棋盘是 9*9的格子默认随机布置 10个雷可以排查雷如果位置不是雷,就显示周围有几个雷如果位置是雷,就炸死游戏结束把除10个雷之外的所有雷都找…

C语言 | Leetcode C语言题解之第514题自由之路

题目&#xff1a; 题解&#xff1a; int findRotateSteps(char* ring, char* key) {int n strlen(ring), m strlen(key);int pos[26][n], posSize[26];memset(posSize, 0, sizeof(posSize));for (int i 0; i < n; i) {int x ring[i] - a;pos[x][posSize[x]] i;}int dp…

H3C vlan和trunk配置

vlan和trunk配置实验 实验拓扑图 实验需求 1.配置pc的IP地址 2.在sw1和sw2上分别创建vlan10和vlan20&#xff0c;要求pc3和pc5输入vlan10&#xff0c;pc4和pc6属于vlan20 3.sw1和sw2相连的接口配置为trunk类型&#xff0c;运行vlan10和vlan20通过 4.测试效果&#xff0c;同…

Springboot整合原生ES依赖

前言 Springboot整合依赖大概有三种方式&#xff1a; es原生依赖&#xff1a;elasticsearch-rest-high-level-clientSpring Data ElasticsearchEasy-es 三者的区别 1. Elasticsearch Rest High Level Client 简介: 这是官方提供的 Elasticsearch 客户端&#xff0c;支持…

大语言模型数据类型与环境安装(llama3模型)

文章目录 前言一、代码获取一、环境安装二、大语言模型数据类型1、基本文本指令数据类型2、数学指令数据类型3、几何图形指令数据类型4、多模态指令数据类型5、翻译指令数据类型三、vscode配置四、相关知识内容1、理解softmax内容2、torch相关函数nn.Embedding函数torch.nn.fun…

《手写Spring渐进式源码实践》实践笔记(第十一章 AOP-基于JDK、Cglib实现对象动态代理)

文章目录 第十一章 基于JDK、Cglib实现对象动态代理背景目标设计实现代码结构类图代理案例解析案例代码运行结果拆解案例 实现步骤 测试事先准备自定义拦截方法测试用例测试结果&#xff1a; 总结 第十一章 基于JDK、Cglib实现对象动态代理 背景 到本章节我们将要从 IOC 的实现…

Java版本的基于计算机视觉的跃动小子保卫主公自动通关计划之整体思路篇

系列文章 Java版本的基于计算机视觉的跃动小子保卫主公自动通关计划之图片分割篇 图片分类篇,执行计划生成篇,执行篇等后续篇章持续更新中,欢迎关注 文章目录 系列文章Java版本的基于计算机视觉的跃动小子保卫主公自动通关计划之整体思路篇构建二维数组构建消除时形态7个元素的…

【无标题】idea 一次性切换多个项目的分支

适合一个目录下面有多个子项目&#xff0c;维护着共同的分支 勾选Settings-Version Control->Git->Executor branch operations on all roots 勾选前&#xff08;是不能一次切换多个项目的分支为同一个分支的&#xff09; 勾选此选项 勾选后&#xff08;可以一次切换多个…

纯css实现瀑布流! 附源码!!!

瀑布流用于展示图片信息,我这里用的背景颜色来代替图片 PC端效果 源码(直接复制粘贴就可以运行了!!!) <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><title>PC端瀑布流</title><style>.box {w…

开发环境 —— Keil5 芯片包安装却找不到芯片

目 录 Keil 5添加芯片包一、查看芯片包名称二、下载芯片包三、安装芯片包四、安装成功却找不到芯片4.1 解压pack文件4.2 拷贝到指定路径 Keil 5添加芯片包 Keil只是一个开发平台&#xff0c;keil 5软件安装完成后&#xff0c;默认只能创建ARM芯片的工程。如果要创建其它芯片的…

网络编程_day3

#1024程序员节 #三次握手四次挥手#四次挥手#udp#recvfrom#sendto#服务器模型#客户端模型#Linux IO模型#阻塞式IO#非阻塞IO#设置非阻塞的方式 目录 【0】复习 【1】三次握手四次挥手 四次挥手 四次挥手既可以由客户端发起&#xff0c;也可以由服务器发起 【2】udp 1. 通信流程 2…