使用Fiddler进行Mock测试的原理和方法

news2024/11/25 22:51:16

叨叨在前:之前工作中,做的纯接口测试,当时公司有自己的Mock平台,可以进行接口Mock测试。后来离开公司后,再想做Mock测试,就只能使用开源工具,或者自己用Flask写Mock了。今儿整理一下,使用Fiddler做Mock测试的方法,供小伙伴一起分享。

一、Fiddler做Mock测试原理

Fiddler之所以可以实现mock,是因为Fiddler本身的工作原理就是在客户端和服务端的通信中间加了一层代理服务,要实现Mock,只需要在代理层做文章即可。

未开启Mock前的数据流转大致如下:

1.客户端发起请求

2.请求数据发送到服务器

3.服务端处理完成后,将响应数据返回给客户端

开启Mock后的数据流转变更为:

1.客户端发起请求

2.请求数据发送到Fiddler

3.Fiddler将配置好的Mock数据直接返回给客户端(不会真实的请求服务端)

 

二、Fiddler做Mock测试方法

1. 打开Fiddler,对需要mock的接口进行抓包

 2.选中抓到的接口,点击右键>Save>...and Open as Local File 点击后默认在桌面保存了一个xx.json的文件

 

 3.打开保存好的xx.json文件,将里面的响应报文修改成自己想要返回的数据,然后保存

 4.将想要Mock的接口拖拽到AutoResponder中(或者选中想要Mock的接口,在AutoResponder中点击Add Rule),接口会被添加到下方

 5.点击选中步骤4新增的接口,Rule Editor变为可编辑态,点击下面一个下拉框,选择Find a flie...

将步骤3中保存好的Mock数据添加好

 

 6.AutoResponder页面勾选 【Enable rules】(启用规则)和 

【Unmatched requests passthrough】 (放行不匹配的请求传递,可以试试不勾选会怎么样=.=),勾选后Fiddler会出现提示:Fiddler can return previously generated responses instead of using the network.(Fiddler可以返回之前生成的响应,而不是使用网络。)

 7.刷新页面,或者重新请求接口,就可以看到效果了 

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

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

相关文章

二、视频换脸

介绍一个优秀的开源项目,DeepFaceLab。开发者是来自俄罗斯的Iperov,同时,他也是曾经应用最广泛的DeepFaceLab的开发者质之一。开源地址:https://github.com/iperov/DeepFaceLab 而这种高质量伪造图像的背后,依托的是“生成对抗网络”(GAN)技术。这类网络由两个 AI 代…

chatgpt赋能python:Python嵌入包:让你的程序更灵活

Python嵌入包:让你的程序更灵活 Python是一种动态、面向对象、高级编程语言,被广泛应用于科学计算、Web开发、大数据、人工智能等领域。Python提供了大量的标准库和第三方库,让开发者能够快速、高效地实现各种功能需求。 但是,在…

ROS EKF 机器人位姿估计功能包:robot_pose_ekf 安装(Ubuntu20.04)

ROS EKF 机器人位姿估计功能包:robot_pose_ekf 安装(Ubuntu20.04) 功能包简介安装 功能包简介 robot_pose_ekf软件包用于基于来自不同来源的(部分)位姿测量值来估计机器人的3D姿势。它使用带有6D模型(3D位…

想要精通算法和SQL的成长之路 - 两两交换链表中的节点

想要精通算法和SQL的成长之路 - 两两交换链表中的节点 前言一. 两两交换链表中的节点 前言 想要精通算法和SQL的成长之路 - 系列导航 一. 两两交换链表中的节点 原题链接 给你一个链表,两两交换其中相邻的节点,并返回交换后链表的头节点。你必须在不修改…

1.8w 字的 SQL 优化大全

目录 1、MySQL的基本架构 1)MySQL的基础架构图 2)查询数据库的引擎 ① show engines; ② show variables like “%storage_engine%”; 3)指定数据库对象的存储引擎 2. SQL优化 1)为什么需要进行SQL优化? 2&am…

迷你版ChatGPT开源,教你怎么用nanoGPT训练一个写小说的AI机器人!

大家好,我是千与千寻,好久不见,最近太忙了,去医院拔了颗智齿,这不是刚休息一天,就立刻来给大家分享ChatGPT的新奇项目了。 ChatGPT的功能确实是好用,但是我觉得有一个小缺点,就是反应的时间比较慢,原因是GPT-3.5/GPT-4.0的模型体积较大,比较占用内存空间。 同时大模…

MySQL存储引擎介绍、InnoDB和MyISAM的区别

存储引擎是MySQL的核心组件,是存储数据、建立索引、更新/查询数据等技术的实现方式,存储引擎是基于表的,而不是基于库的,所以存储引擎也可被称为表类型。以在创建表的时候,来可以指定选择的存储引擎,如果没…

指针--指针变量的定义和初始化

存放变量的地址需要一种特殊类型的变量,这种特殊的数据类型就是指针(Pointer)。 具有指针类型的变量,称为指针变量,它时专门用于存储变量的地址值和变量。 其定义形式如下: 类型关键字 * 指针变量名&#x…

【Swift基础语法SnapKit自动布局库的使用】

文章目录 前言playgroundvar 和 let-元组string-字典-数组闭包enum类和对象属性类UI和OC的区别,更简洁懒加载全局文件snap kit的使用top 和 topMargin 总结 前言 最近在学习swift和写项目,给我的感受,语言简洁和安全,在学习了基础…

从GitHub上新拉一个项目并在mac系统下运行遇到的种种问题

如果项目已经被拉下来,现在我们要启动项目。 step1、需要了解该项目是什么,它的作用是什么,以及它可以解决的问题。阅读项目的介绍、文档和示例,确保对项目有一个基本的认识。 step2、设置开发环境:确保您的开发环境…

网络安全系统教程+渗透测试+学习路线(自学笔记)

一、什么是网络安全 网络安全可以基于攻击和防御视角来分类,我们经常听到的 “红队”、“渗透测试” 等就是研究攻击技术,而“蓝队”、“安全运营”、“安全运维”则研究防御技术。 无论网络、Web、移动、桌面、云等哪个领域,都有攻与防两面…

使用Smart Install Maker为应用制作安装程序

一. 前言 Unity发布发布PC平台exe的时候,是生成一个Data目录和一个exe文件,如下: 而一般软件发布的时候,是只有一个Setup.exe这样子的安装程序,可以使用Smart Install Maker这个软件来制作这个Setup.exe程序。 二. S…

函数重载与缺省参数

目录 一 缺省参数 缺省参数分半缺省和全缺省。 2,半缺省参数 3,全缺省参数 4.缺省参数的注意事项 二 函数重载 2 .函数重载参数类型不同强调 三 函数名修饰规则 一 缺省参数 1.缺省参数特性(备胎) 缺省参数是指我们定义函数时有给缺省值的参数&#xf…

chatgpt赋能python:Python开发APP的SEO优化指南

Python开发APP的SEO优化指南 Python是广受欢迎的编程语言,它用于开发各种应用程序,从简单的脚本到大型网络应用程序。SEO优化对于任何应用程序的成功都非常重要,这篇文章将介绍一些Python开发APP的SEO实践和技巧。 为什么需要SEO优化&#…

【OpenMMLab AI实战营第二期】目标检测与MMDetection

目标检测 目标检测的基本范式 划窗 使用卷积实现密集预测 锚框 多尺度检测与FPN 单阶段&无锚框检测器选讲 RPN YOLO、SSD Focal Loss与RetinaNet FCOS YOLO系列选讲 什么是目标检测 目标检测:给定一张图片,用矩形框框出所有感兴趣物体同…

Lucene(8):Lucene底层储存结构

1 详细理解lucene存储结构 存储结构 : 索引(Index) : 一个目录一个索引,在Lucene中一个索引是放在一个文件夹中的。 段(Segment) : 一个索引(逻辑索引)由多个段组成, 多个段可以合并, 以减少读取内容时候的磁盘IO。Lucene中的数据写入会先写内存的一个…

公共场所人流数据统计如何实现?解决重识别、漏检等检测难题

https://github.com/PaddlePaddle/paddledetection当前疫情形势严峻,商场、火车站、地铁口等公共场所对人员流量的统计至关重要。“每天进出多少人?” “现在商场中人员数量有多少?”这些关键数据直接影响到相关防疫管控措施。因为人员基数较…

shardingsphere5.x整合springboot分库分表实战

官方文档不同版本配置变更记录&#xff1a;Spring Boot Start 配置 :: ShardingSphere pom.xml配置&#xff1a; <!--shardingsphere分库分表依赖--> <dependency><groupId>org.apache.shardingsphere</groupId><artifactId>shardingsphere-jd…

分布式锁原理与实战一:分布式锁简介

跨JVM的线程安全问题 在单体的应用开发场景中&#xff0c;在多线程的环境下&#xff0c;涉及并发同步的时候&#xff0c;为了保证一个代码块在同一时间 只能由一个线程访问&#xff0c;我们一般可以使用 synchronized 语法和 ReetrantLock 去保证&#xff0c;这实际上是本地锁…

指针--间接寻址运算符

通常&#xff0c;只要指明要访问的变量的内存地址&#xff0c;即可直接访问变量所在的存储单元中的内容。在前面都是直接通过变量名来访问变量的内容。直接按变量名或者变量的地址存取变量的内容的访问方式&#xff0c; 称为 直接寻址&#xff08;Direct Addressing&#xff09…