看完就会,从抓包到接口测试的全过程解析

news2024/10/7 14:29:38

一、为什么抓包

从功能测试角度

通过抓包查看隐藏字段

Web 表单中会有很多隐藏的字段,这些隐藏字段一般都有一些特殊的用途,比如收集用户的数据,预防 CRSF 攻击,防网络爬虫,以及一些其他用途。这些隐藏字段在界面上都看不到,如果想检测这些字段,就必须要使用抓包工具。

通过抓包工具了解协议内容

方便开展接口和性能测试

性能测试方面,性能测试其实就是大量模拟用户的请求,所以我们必须要知道请求中的协议内容和特点,才能更好的模拟用户请求,分析协议就需要用到抓包工具;接口测试方面,在接口测试时,虽然我们尽量要求有完善的接口文档。但很多时候接口文档不可能覆盖所有的情况,或者因为文档滞后,在接口测试过程中,还时需要借助抓包工具来辅助我们进行接口测试。

需要通过抓包工具,检查数据加密

安全测试方面,我们需要检查敏感数据在传输过程中是否加密,也需要借助抓包工具才能检查。

处理前后端 bug 归属之争

在我们提交 bug 的时候,经常会出现前端(客户端展示)和后端(服务端的逻辑)的争议,那么可以通过抓包工具,确实是数据传递问题还是前端显示的问题。如果抓出来的数据就有问题的话,那么一般是后端的问题;如果抓出来的数据是正确的,那么基本上可以断定是前端显示的问题。

通过抓包分析

可以更好的理解整个系统

经常使用抓包工具辅助测试,可以很好的了解整个系统,比如数据传输过程前后端的关系,以及整个系统的结构。特别是对现在的微服务架构的产品,抓包能够更好的梳理和掌握整个系统各个服务之间的关系,大大增加测试的覆盖度。另外还可以增进对代码、HTTP 协议方面知识的理解。

二、如何抓包

常用的抓包工具有 Fiddler、wireshark、Charles 以及浏览器自带 F12 等多种工具。那么在这里给大家演示如何用浏览器自带 F12 来进行抓包。

➤第 1 步:打开浏览器后,按 F12,选择网络–点击设置按钮–勾选持续记录在这里插入图片描述

➤第 2 步:在浏览器上操作,在网络中就可以看到 HTTP 请求信息(登录操作)在这里插入图片描述 

➤第 3 步:找到操作的请求信息(登录操作)在这里插入图片描述 

➤第 4 步:获取请求的四要素,用于做接口测试

1-请求地址:

http://wy.lemonban.com:3000/callComponent/login/doLogin?version=2.0

2-请求方法:post

3-请求参数:

{"logo":"HC","username":"wuye_kemi","passwd":"xxxx","validateCode":"LEMON","errorInfo":""}
username:登录时的用户名

passwd:登录时的密码

validateCode:登录时的验证码

4-响应结果:

{"userName":"wuye_kemi","userId":"302021110504836175","token":"eyJ0eXAiOiJKV1QiLCJhbG

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

在这里插入图片描述

三、Postman 接口测试实战

通过 F12 抓包后我们获取到了相关的接口信息,接下来就可以用 postman 接口工具来进行接口的测试了。

依次把请求地址、请求方式、请求参数填入 postman 工具中,点击 Send 发送,再核对响应结果与抓包响应结果即可。这样子一个简单的接口调试就完成了。在这里插入图片描述

四、总结

如果要通过抓包的方式来进行接口测试,需要具有一定的网络协议基础,这些基础可以让你快速找到请求和接口信息。

其次是在进行接口测试过程中,我们最好与开发进行沟通,因为他们更加清楚每个参数的含义以及类型约束,想要更全面的测试接口,可以将抓包信息整理成文档,并与开发沟通完善文档。

有接口文档再进行用例设计与接口执行才是规范的测试流程哦。


             【下面是我整理的2023年最全的软件测试工程师学习知识架构体系图】


一、Python编程入门到精通


二、接口自动化项目实战 

三、Web自动化项目实战


四、App自动化项目实战 

五、一线大厂简历


六、测试开发DevOps体系 

七、常用自动化测试工具


八、JMeter性能测试 

九、总结(尾部小惊喜)

生命不息,奋斗不止。每一份努力都不会被辜负,只要坚持不懈,终究会有回报。珍惜时间,追求梦想。不忘初心,砥砺前行。你的未来,由你掌握!

生命短暂,时间宝贵,我们无法预知未来会发生什么,但我们可以掌握当下。珍惜每一天,努力奋斗,让自己变得更加强大和优秀。坚定信念,执着追求,成功终将属于你!

只有不断地挑战自己,才能不断地超越自己。坚持追求梦想,勇敢前行,你就会发现奋斗的过程是如此美好而值得。相信自己,你一定可以做到!

【软件测试技术交流(免费领取全套软件测试资料)】:320231853(备注C)icon-default.png?t=N5K3http://qm.qq.com/cgi-bin/qm/qr?_wv=1027&k=HKDoSdCkRR5236N1DlgX2h9973O1grY3&authKey=sLleylQzrdBAqIgw64E2%2BjCNiSRlHmc6obzKPpN6htPsEFd97a4FgKx4%2Bt4Qx%2Fw%2F&noverify=0&group_code=320231853

 

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

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

相关文章

react—Hook(2)

6. useMemo—似计算属性 useMemo和useCallback的作用十分类似,只不过它允许记住任何类型的变量(useCallback只记住函数)。当改变其他变量时,普通函数都会运行,它返回的结果并没有改变。这个时候就可以使用useMemo将函…

MFC 单文档模式

Doc类利用自带框架存数据 void CCADDoc::Serialize(CArchive& ar) {if (ar.IsStoring()){// TODO: 在此添加存储代码//保存数据到文件ar << m_nShapeCount;for (int i 0; i < m_arrShapes.GetSize(); i){CShape* pShape NULL;pShape (CShape*)m_arrShapes[i];…

如何在大背景下降本增效,构建超大规模存储架构?

在日新月异的大数据服务不断涌现的今天&#xff0c;我们可以看到作为数据基础底座的存储服务面临了越来越多的复杂环境和需求的挑战。无论是离线大数据存储&#xff0c;还是在线 KV 类存储&#xff0c;都服务了越来越多的数据应用场景。存储业务形态的多样化&#xff0c;催生了…

linux centos8下安装redis6.2.12

一.下载安装包并解压 Download | Redis 解压操作 tar -zxvf redis-6.2.12.tar.gz 二.进入到redis-6.2.12中 cd redis-6.2.12 三.预编译make到本地 四.创建文件: mkdir -p /opt/redis,最后将redis安装到opt/redis目录中去 五.安装到指定目录: make install PREFIX/opt/redis…

Android 支持 lhdc

LHDC全称Low-Latency Hi-Definition Audio Codec&#xff0c;是一种高音质蓝牙编解码方案&#xff0c;由台湾厂商 Savitech 盛微先进科技开发。先看下介绍 这块不涉及音频&#xff0c;只有蓝牙&#xff0c;因为音频的codec是由台湾厂商 Savitech 盛微先进科技开发的&#xff0…

信息化项目生命周期类型的特点与管理方法论

目录 一、预测型生命周期 二、迭代型生命周期 三、增量型生命周期 四、适应型生命周期 五、混合型生命周期 六、各生命周期之间的差异点 七、项目管理五大过程组 八、适应型项目中过程组之间的关系 九、项目管理十大知识领域 十、项目管理八大绩效域 十一、价值交付系统 一、预…

立体记录留住精彩瞬间,推荐录屏软件给你

在如今数字化时代&#xff0c;电脑录屏软件成为越来越多人必备的工具之一。不论是教学、演示、游戏录制还是内容创作&#xff0c;录屏软件能够帮助我们捕捉屏幕上的活动并将其保存为高质量的视频文件。然而&#xff0c;在众多的选择中&#xff0c;我们该如何寻找一款适合自己需…

C#核心知识回顾——10.List、Dictionary、数据结构

1.List List<int> list new List<int>(); List<String> strings new List<String>();//增list.Add(0);list.Add(1);List<int> ints new List<int>();ints.Add(0);list.AddRange(ints);//插入list.Insert(0, 1);// 位置0插入1//删//1.移…

Impala3.4源码阅读笔记(五)统计信息

前言 本文为笔者个人阅读Apache Impala源码时的笔记&#xff0c;仅代表我个人对代码的理解&#xff0c;个人水平有限&#xff0c;文章可能存在理解错误、遗漏或者过时之处。如果有任何错误或者有更好的见解&#xff0c;欢迎指正。 基本信息 在Impala中&#xff0c;Stats记录…

【Vuejs】1732- 详细聊一聊 Vue3 依赖注入

&#x1f449; 「相关文章」 深入浅出 Vue3 自定义指令详细聊一聊 Vue3 动态组件6 个你必须明白 Vue3 的 ref 和 reactive 问题初中级前端必须掌握的 10 个 Vue 优化技巧分享 15 个 Vue3 全家桶开发的避坑经验 在 Vue.js 中&#xff0c;依赖注入[1]&#xff08;DI&#xff09;是…

中小企业做知识管理如何选择KMS?

编者按&#xff1a;&#xff08;KM&#xff09;是创建、共享、使用和管理组织的知识和信息的过程。它是指通过充分利用知识来实现组织的多学科方法。那么中小企业预算有限的情况下&#xff0c;该如何选择KMS呢 &#xff1f; 关键词&#xff1a;知识管理系统、免安装、免维护 市…

在职读研弥补学历短板——中国人民大学与加拿大女王大学金融硕士项目

在当今社会 “文凭化”的理念下&#xff0c;学历变得很重要。学历会影响到一个人成长发展的各各方面&#xff0c;当我们“工作越久&#xff0c;接触社会越久”&#xff0c;越感觉到学历的重要性。具有高学历&#xff0c;就具有更多的发展机会&#xff0c;具有更多精神上的财富&…

Basler相机一丢包就断开问题解决

问题描述&#xff1a; 两个相机&#xff0c; 一个相机aca2500-14gm连接电脑主板100M网卡没问题&#xff0c;帧率3帧&#xff0c;但是不会断。 一个相机aca2500-14gm连接USB转网口&#xff08;千兆&#xff09;&#xff0c;pylon Viewer采图丢包严重并且几秒后相机断开。 解决…

集合面试题--复杂度分析

为什么要进行复杂度分析&#xff1f; 1指导编写出性能更优的代码2评判别人写的代码的好坏 时间复杂度分析 常见复杂度表示 常见复杂度 空间复杂度

【赠书活动 - 第1期】- 测试工程师Python开发实战(异步图书出品)| 文末送书

⭐️ 赠书 - 测试工程师Python开发实战&#xff08;异步图书出品&#xff09; 当初就是因为开发做不好&#xff0c;才去做测试了…… 这句玩笑话在过去可以说是测试人员的真实写照。 常规测试工作给人的印象&#xff0c;就是弄清楚软件功能&#xff0c;编写测试用例&#xff0…

基于springboot+Redis的前后端分离项目之消息队列(六)-【黑马点评】

&#x1f381;&#x1f381;资源文件分享 链接&#xff1a;https://pan.baidu.com/s/1189u6u4icQYHg_9_7ovWmA?pwdeh11 提取码&#xff1a;eh11 秒杀优化、消息队列 秒杀优化1 秒杀优化-异步秒杀思路2 秒杀优化-Redis完成秒杀资格判断3 秒杀优化-基于阻塞队列实现秒杀优化 Red…

抖音矩阵系统源码开源部署分享(三)

目录 一、 概述&#xff1a; 二、 账号矩阵搭建目的&#xff1a; 三、 抖音矩阵系统源码开发步骤 四、 功能规划 五、 代码开发展示 一、 概述&#xff1a; 抖音矩阵系统是指通过多个账号运营&#xff0c;对账号之间的内容和特征进行细分&#xff0c;账号之间相互引流推广&a…

什么是数字化和数字化转型?终于有人讲明白了!

在我与不同行业、不同岗位甚至不同阶层的人谈论数字化和数字化转型的时候发现一个很有意思的现象&#xff1a; 许多人出于无知或为了自己的利益而开始混淆这两个术语&#xff0c;甚至一些人已经开始将数字化标记为数字化转型&#xff0c;以安抚管理层、获得项目批准或进行销售…

在海外我们该如何推广应用

Google Play和Apple Store上有各种各样不同的应用程序&#xff0c;大量的正面评论和高评级可以成为应用在当前市场上取得成功的关键。大多数用户更喜欢有很多应用评论&#xff0c;积极反馈和高评级的应用程序&#xff0c;因此每条应用程序评论都很重要。确保鼓励用户留下评论&a…