断点测试怎么做,一文教你用Charles 工具做好接口测试!

news2024/11/15 13:35:53

在测试工作过程中,我们经常会在程序的某一行或者某一环节设置断点,在程序请求的过程中,修改断点处的参数、请求或者响应,这就是所谓的断点测试。这类断点测试主要用于接口测试。

断点测试可以通过查看接口返回数据可以方便定位是前端还是后端的问题,同时通过更改 request 和 response 数据可以很方便构造测试数据。

简而言之,断点测试可以通过修改接口数据更快的定位问题。这是一种测试常用的方法。

Charles 工具如何做断点测试

Charles 抓包工具可就可以很方便的实现断点测试。

具体实现的步骤如下:

第一步:启动断点

在工具菜单栏点击这个断点按钮,如下图所示,即可启动断点功能。

图片

或者在 proxy -- > breakpoint setting --> 启动断点设置:

图片

第二步:将目标接口加入断点配置

  1. 先启动抓包,捕获到对应的请求;

2.选中请求右键,选择“Breakpoints” , 即可讲这个接口加入断点的配置里:

图片

这样,在 proxy 的断点设置里就会添加这个接口的配置;下次如果再访问这个接口,就会触发断点。

图片

此处注意:每个接口添加断点之后,默认是 requests 消息和 response 消息都会触发这个断点的。

第三步:请求断点

浏览器里再次出发这个接口请求,就会触发这个断点,在 Charles 这个工具里跳出一个新的窗口,是打断点的页面,这个是请求消息触发的断点,显示的也是请求消息:

图片

4. 点击 Edit requests,修改请求消息,然后点击“Execute”,执行这个请求,查看页面显示结果:

图片

编辑完请求消息之后,点击“Execute”之后,就会将编辑修改过的请求消息发送到后端;比如:

讲 page 参数的值修改为“2”,点击执行之后,可以在页面上看到对应的效果,显示为第二页的数据:

图片

第四步:响应断点

如果响应消息也配置在断点设置里,那么响应消息也会触发断点,断点页面会显示响应的信息:

图片

然后可以在“Edit Response”页面里编辑响应消息,比如把响应消息的内容都删除,然后点击“Execute”:

图片

在页面上就可以同步看到对应的结果显示,没有数据显示。

图片

图片

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

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

相关文章

015-衍生版本开发

衍生版本开发 文章目录 衍生版本开发项目介绍衍生版本开发波形分析设置CPU 亲缘性 总结 关键字: Qt、 Qml、 关键字3、 关键字4、 关键字5 项目介绍 欢迎来到我们的 QML & C 项目!这个项目结合了 QML(Qt Meta-Object Language&#…

【Linux】基本指令-入门级文件操作(一)

目录 前言 ⭕linux的树状文件结构 ⭕绝对路径和相对路径 ⭕当前路径和上级路径 ⭕隐藏文件 基本指令(重点) 1 pwd 指令 2 mkdir 指令 3 touch 指令 4 ls 指令 4.1 ls只加选项不加文件/目录名,默认查看当前目录下的文件 4.1.1 ls -a…

360 G800行车记录仪,不使用降压线如何开机,8芯插头的定义。

G800记录仪的插头是这样的,图中标出了线的颜色。其中红色为常电V,黑色为GND负极,黄色为ACC受车是否启动控制。 这个记录仪原装的电源线没有降压功能,所以这里的V是12V。 记录仪内部有电源板,负责将12V降压为5V。 如果…

CSS盒子定位的扩张

定位的扩展 绝对定位(固定定位)会完全压住盒子 浮动元素不会压住下面标准流的文字,而绝对定位或固定位会压住下面标准流的所有内容 如果一个盒子既有向左又有向右,则执行左,同理执行上 显示隐藏 display: none&…

Tasmota系统之MQTT配置和使用篇

Tasmota系统之MQTT配置和使用篇 🚩相关篇《ESP32/ESP8266在线刷写Sonoff Tasmota固件以及配置简要》📌《Tasmota系统之外设配置》📍Tasmota官方对MQTT功能使用介绍:https://tasmota.github.io/docs/MQTT/ 🛠MQTT本地化…

消息队列 Kafka

Kafka Kafka 是一个分布式的基于发布/订阅模式的消息队列(MQ,Message Queue),主要应用于大数据实时处理领域 为什么使用消息队列MQ 在高并发环境下,同步请求来不及处理会发生堵塞,从而触发too many conne…

团队协作中如何处理ConflictingBeanDefinitionException异常

👼 前言 当使用Spring框架进行Java应用程序开发时,可能会遇到ConflictingBeanDefinitionException异常。 如: org.springframework.context.annotation.ConflictingBeanDefinitionException: Annotation-specified bean name ‘xxxBean’ …

Spring5应用之AOP注解编程

作者简介:☕️大家好,我是Aomsir,一个爱折腾的开发者! 个人主页:Aomsir_Spring5应用专栏,Netty应用专栏,RPC应用专栏-CSDN博客 当前专栏:Spring5应用专栏_Aomsir的博客-CSDN博客 文章目录 参考文献前言开发…

2.1 Qemu系统模拟:简介

目录 1 后端/加速器2 特性简介3 运行 1 后端/加速器 系统模拟主要用于在host设备上运行guest OSQEMU支持多种hypervisors,同时也支持JIT模拟方案(TCG) 例如从上表我们可以看出,运行在x86硬件上的Linux系统支持KVM,Xen,TCG 2 特性简介 提供…

【kubernetes】带你了解k8s中PV和PVC的由来

文章目录 1 为什么需要卷(Volume)2 卷的挂载2.1 k8s集群中可以直接使用2.2 需要额外的存储组件2.3 公有云 2 PV(Persistent Volume)3 SC(Storage Class) 和 PVC(Persistent Volume Claim)4 总结 1 为什么需要卷(Volume) Pod是由一个或者多个容器组成的,在启动Pod中…

C++11(下)

目录 一、类的新功能1.1 默认成员函数1.2 类成员变量初始化1.3 强制生成默认函数的关键字default1.4 禁止生成默认函数的关键字delete1.5 继承和多态中的final与override关键字 二、可变参数模板三、lambda表达式3.1 C98中的一个例子3.2 lambda表达式3.3 lambda表达式语法3.4 函…

CUDA----window更新升级cuda版本

在安装库的过程中发现cuda版本不匹配。我torch安装的是11.7,但是我电脑上安装的是11.2故想升级。 但是我用nvidia-smi命令查询cuda是12.2,这让我费解,后来发现是得使用nvcc -V来查询安装的cuda版本。 详细的升级过程可以看这篇博客&#xff…

Android约束布局ConstraintLayout的Guideline,CardView

Android约束布局ConstraintLayout的Guideline&#xff0c;CardView <?xml version"1.0" encoding"utf-8"?> <androidx.constraintlayout.widget.ConstraintLayout xmlns:android"http://schemas.android.com/apk/res/android"xmlns:a…

C++ 类和对象篇(八) const成员函数和取地址运算符重载

目录 一、const成员函数 1. const成员函数是什么&#xff1f; 2. 为什么有const成员函数&#xff1f; 3. 什么时候需要使用const修饰成员函数&#xff1f; 二、取地址运算符重载 1. 为什么需要重载取地址运算符&#xff1f; 2. 默认取地址运算符重载函数 3. 默认const取地址运…

016-第三代软件硬件及系统选型

第三代软件硬件及系统选型 文章目录 第三代软件硬件及系统选型项目介绍硬件选型软件系统选型总结 关键字&#xff1a; Qt、 Qml、 研华、 ubuntu、 x86 项目介绍 欢迎来到我们的 QML & C 项目&#xff01;这个项目结合了 QML&#xff08;Qt Meta-Object Language&…

java基础 日期工具类

目录结构&#xff1a; DateUtils.java package dateStudy; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date;public class DateUtils {private static final String FORMAT_1"yyyy-MM-dd HH:mm:ss";//私有方法&#xf…

国家开放大学 模拟试题 训练

试卷代号&#xff1a;2136 管理会计 参考 试题 一、单项选择题&#xff08;每小题1分&#xff0c;共20分&#xff09; 1.管理会计依靠各种功能来助力企业战略&#xff0c;下列哪项是管理会计的核心功能( )。 A.评价功能 B.预测功能 C.决策功能…

计算机算法分析与设计(8)---图像压缩动态规划算法(含C++)代码

文章目录 一、知识概述1.1 问题描述1.2 算法思想1.3 算法设计1.4 例题分析 二、代码 一、知识概述 1.1 问题描述 1. 一幅图像的由很多个像素点构成&#xff0c;像素点越多分辨率越高&#xff0c;像素的灰度值范围为0~255&#xff0c;也就是需要8bit来存储一个像素的灰度值信息…

某果的一个小参数分析

分析链接:aHR0cHM6Ly9hcHBsZWlkLmFwcGxlLmNvbS9hY2NvdW50 分析目标&#xff1a;X-Apple-I-Fd-Client-Info 1.在浏览器搜索关键词&#xff0c;打下断点 我们再里面进行搜索&#xff0c;定位到这个位置&#xff0c;可以看到X-Apple-I-FD-Client-Info这个参数等于e&#xff0c;…

Netty深入浅出(无处不在的IO)

为什么要有Netty Netty是为了解决网络编程的复杂性和提供易于使用、高性能和可扩展的框架而开发的。它通过提供一组可重用的组件来处理网络通信的低级细节&#xff0c;例如套接字管理、线程和缓冲&#xff0c;简化了开发网络应用程序的过程。这使开发人员可以专注于应用程序逻…