看完就会,从抓包到接口测试的全过程解析【1500字保姆级教程】

一、为什么抓包
1、从功能测试角度

通过抓包查看隐藏字段

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

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

方便开展接口和性能测试

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

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

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

4、处理前后端 bug 归属之争

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

5、通过抓包分析

可以更好的理解整个系统

经常使用抓包工具辅助测试,可以很好的了解整个系统,比如数据传输过程前后端的关系,以及整个系统的结构。特别是对现在的微服务架构的产品,抓包能够更好的梳理和掌握整个系统各个服务之间的关系,大大增加测试的覆盖度。另外还可以增进对代码、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":"eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJqY"}

 

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

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

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

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

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

总结:

感谢每一个认真阅读我文章的人!!!

作为一位过来人也是希望大家少走一些弯路,如果你不想再体验一次学习时找不到资料,没人解答问题,坚持几天便放弃的感受的话,在这里我给大家分享一些自动化测试的学习资源,希望能给你前进的路上带来帮助。

软件测试面试文档

我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

 

文档获取方式:

加入我的软件测试交流群:822269834免费获取~(同行大佬一起学术交流,每晚都有大佬直播分享技术知识点)

这份文档,对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!

以上均可以分享,只需要你搜索vx公众号:程序员雨果,即可免费领取

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

从裸机启动开始运行一个C++程序(十四)

前序文章请看: 从裸机启动开始运行一个C程序(十三) 从裸机启动开始运行一个C程序(十二) 从裸机启动开始运行一个C程序(十一) 从裸机启动开始运行一个C程序(十) 从裸机启动…

socket can中是如何根据 结构体can_bittiming_const中的字段 计算bitrate的?

在 SocketCAN 中,can_bittiming_const 结构体用于表示 CAN 总线的定时参数,包括位率(bitrate)的计算。can_bittiming_const 包含了许多与位率相关的参数,其中一些参数用于计算实际的位率。 下面是一些与位率计算相关的…

js实现数组的上下移动

思路:上移表示index索引位置减去1,下移表示index索引位置增加1。使用数组的splice方法实现。例如上移:splice(元素当前索引位置,1(删除1个元素),‘元素当前索引位置 - 1’)。

ruoyi 若依框架采用第三方登录

在项目中,前后端分离的若依项目,需要通过统一认证,或者是第三方协带认证信息跳转到本系统的指定页面。需要前后端都做相应的改造,由于第一次实现时已过了很久,再次重写时,发现还是搞了很长时间,…

任意分圆环下的 RLWE:如何产生正确的噪声分布

参考文献: [Con09] Conrad K. The different ideal[J]. Expository papers/Lecture notes. Available at: http://www.math.uconn.edu/∼kconrad/blurbs/gradnumthy/different.pdf, 2009.[LPR10] Lyubashevsky V, Peikert C, Regev O. On ideal lattices and learn…

友思特分享 | Neuro-T:零代码自动深度学习训练平台

来源:友思特 智能感知 友思特分享 | Neuro-T:零代码自动深度学习训练平台 欢迎关注虹科,为您提供最新资讯! 工业自动化、智能化浪潮涌进,视觉技术在其中扮演了至关重要的角色。在汽车、制造业、医药、芯片、食品等行业…

日本服务器访问速度和带宽有没有直接关系?

​  对于许多网站和应用程序来说,服务器的访问速度是至关重要的。用户希望能够快速加载页面、上传和下载文件,而这些都与服务器的带宽有关。那么,日本服务器的访问速度和带宽之间是否存在直接关系呢? 我们需要了解什么是带宽。带宽是指网络…

NVMe-oF E-JBOF设计解析:WD RapidFlex网卡、OpenFlex Data24

OpenFlex Data24 NVMe-oF Storage Platform WD的SN840 NVMeSSD新品并没有太吸引我注意,因为它还是PCIe 3.0接口的,要知道Intel的PCIe 4.0 SSD都已经推出了。 但上面这个NVMe-oF(NVMe over Fabric)EBOF(区别于普通JBO…

中国上市公司漂绿程度及其同构指数(多种测算方法,2012-2022年)

数据简介:20 世纪 90 年代开始,国际上关于绿色市场和绿色管理的学术文献日渐丰富,众多企业积极响应碳排放政策的号召,但其中有多少企业是实实在在的进行碳减排技术创新,又有多少企业打着绿色低碳行为的口号来吸引眼球、…

浏览器缓存、本地存储、Cookie、Session、Token

目录 前端通信(渲染、http、缓存、异步、跨域) HTTP与HTTPS,HTTP版本、状态码 请求头,响应头 缓存 强制缓存:Cache-Control:max-age(HTTP1.1)>Expires(1.0) js、…

【Spring篇】JDK动态代理

目录 什么是代理? 代理模式 动态代理 Java中常用的代理模式 问题来了,如何动态生成代理类? 动态代理底层实现 什么是代理? 顾名思义,代替某个对象去处理一些问题,谓之代理,那么何为动态&a…

力扣 3. 无重复字符的最长子串

题目 题解 方法 public static int lengthOfLongestSubstring(String s) {HashSet<Character> charSet new HashSet<Character>();int i 0,l0,max0;for (int j 0; j < s.length(); j) {while (charSet.contains(s.charAt(j))) {charSet.remove(s.charAt(l…

python -opencv 轮廓检测(多边形,外接矩形,外接圆)

python -opencv 轮廓检测(多边形&#xff0c;外接矩形&#xff0c;外接圆) 边缘检测步骤: 第一步&#xff1a;读取图像为灰度图 第二步&#xff1a;进行二值化处理 第三步&#xff1a;使用cv2.findContours对二值化图像提取轮廓 第三步&#xff1a;将轮廓绘制到图中 代码如下…

科学上网也clone不全PX4?

一、问题 已经科学上网&#xff0c;下载PX4固件 git clone https://github.com/PX4/Firmware.git --recursivePX4大框架 clone 下来了&#xff0c;但是内部的子模块很多没有&#xff0c;报了很多 Fatal&#xff0c;例如 fatal: clone of https://github.com/px4/cyclonedds …

行情分析 - - 加密货币市场大盘走势(11.24)

大饼昨日震荡幅度很小&#xff0c;而今天延续昨日的空头思路。当然如果从MACD日线来看&#xff0c;处于上涨趋势&#xff0c;稳健的可以选择观望等待。空头思路是因为目前EMA21均线和EMA55均线依然保持很远&#xff0c;最近两个月BTC上涨40%&#xff0c;而最近持续保持高位很快…

16个产品经理必备的原型设计软件盘点

原型就像一幅画&#xff0c;比千言万语好。将产品或界面的概念转化为特定的对象是设计过程中的一个关键点&#xff0c;也是每个设计师创作过程的一部分。 每个设计师都应该有一个合适的原型工具。今天&#xff0c;将介绍18种设计原型工具&#xff0c;让我们看看&#xff01; …

HarmonyOS ArkTS 给应用添加通知和提醒(十二)

简介 随着生活节奏的加快&#xff0c;我们有时会忘记一些重要的事情或日子&#xff0c;所以提醒功能必不可少。应用可能需要在指定的时刻&#xff0c;向用户发送一些业务提醒通知。例如购物类应用&#xff0c;希望在指定时间点提醒用户有优惠活动。为满足此类业务诉求&#xf…

元宇宙vr线上展馆在线制作降低开发门槛和成本

让人人都拥有自己的元宇宙空间&#xff0c;说起来就是一个令人亢奋的消息&#xff0c;也是大家所期待的&#xff0c;VR元宇宙空间在线编辑平台是VRARAI元宇宙公司深圳华锐视点自主研发的平台&#xff0c;允许用户在虚拟环境中创建、设计和共享空间&#xff0c;操作简单&#xf…

语音合成综述Speech Synthesis

一、语音合成概述 语音信号的产生分为两个阶段&#xff0c;信息编码和生理控制。首先在大脑中出现某种想要表达的想法&#xff0c;然后由大脑将其编码为具体的语言文字序列&#xff0c;及语音中可能存在的强调、重读等韵律信息。经过语言的组织&#xff0c;大脑通过控制发音器…

探讨工业元宇宙和数字孪生的关系

就在各类技术专家还在试图设想元宇宙虚拟世界将为企业和消费者带来什么时&#xff0c;工业元宇宙虚拟世界已经在改变人们设计、制造以及与各行业物理实体互动的方式。尽管元宇宙的定义比比皆是&#xff0c;工业元宇宙将如何发展还有待观察&#xff0c;但数字孪生越来越多地被视…