软件测试之接口测试(Postman/Jmeter)
🍅 视频学习:文末有免费的配套视频可观看
🍅 点击文末小卡片,免费获取软件测试全套资料,资料在手,涨薪更快
一、什么是接口测试
通常做的接口测试指的是系统对外的接口,比如你需要从别的系统来获取到或者同步资源与信息,他们会提供给你一个写好的接口方法供你调用,比如常用的app,用户同步这些在处理数据的时候需要通过接口进行调用。
webService接口和http api接口是最常见的两种接口方式,后者最常用,采用http协议,有get 和post请求方法,返回的数据是json类型,接口测试也可以说是功能测试,通过调用接口从数据库中获取到数据,返回回来。
二、前端和后端
前端和后端如果说成客户端与服务端比较好理解,在浏览器上打开一个网页,打开一个管理系统,在一个APP上操作,这些都属于前端,他的作用就是显示页面,操作页面,而处理这些业务逻辑功能比如说页面上的非空校验,业务逻辑功能能都是通过后端来实现的,而前端和后端的交互正是通过接口来交互的。
三、get请求和post请求的区别
get请求接口的请求数据是放在url里面的,post请求接口的请求数据是放在body里面的,get请求可以在浏览器中直接访问,而post请求只能借助工具完成
四、cookie和session
cookie是存放在本地的一个健值对 对应的是key-value,session是存放在服务端的一个健值对k-v
五、接口测试的依据
接口规范文档,接口文档至少包括
1、接口说明
2、调用url
3、请求方法(get\post)
4、请求参数、参数类型、请求参数说明
5、返回参数说明
六、HTTP状态码
每个发出去的http请求,都会返回一个状态码,用来标识这个请求是否成功,常见的状态码有以下几种:
1)200 2开头的表示请求成功
2)300 3开头的代表重点向
3)400 4开头的代表客户端发送的请求有语法错误
4)500 5开头的代表服务器有异常
七、通用接口用例

八、postman接口测试
1)get请求
请求参数可以在url后面直接传参,多个参数用&符号,url?x=x&xx=xx
header 用来传输一些额外的信息
例如:获取学生信息接口,postman测试操作截图

获取所有学生信息接口添加header信息,postman测试操作截图

2)post请求
例如登陆接口,包含内容:post请求方式,请求url,参数在body处填写,点击send返回数据

添加学生信息接口(入参是json类型),包含内容,请求url,post请求,参数在body内选择raw填写json串

学生金币信息充值接口,包含权限认证需要添加管理员权限cookie,操作内容包含请求url,选择Headers添加cookie,body添加参数


获取所有学生信息接口,添加header信息,操作包含内容,请求url,header添加Referer

文件上传接口

九、Jmeter接口测试
1) jmeter查看结果树乱码?
到jmeter的安装目录bin目录下找到jmeter.properties,添加sampleresult.default.encoding=utf-8
重启jmeter
2)jmeter body data里面有乱码怎么解决?
到jmeter的安装目录bin目录下找到jmeter.properties,添加jsyntaxtextarea.font.family=Hack
重启jmeter
3)jmeter参数化
用户定义的变量
线程组-》添加-》配置元件-》用户定义的变量,添加名称,值,引用变量填写${变量名}
函数助数
选项-》函数助手对话框,选择函数功能,例如__random、__time ,选择后点击【生成】,把生成的函数字符串拷贝到请求数据中 ,__time生成的是时间戳,时间戳就是从计算机诞生那一天到现在过了多少秒,如果要转换其他日期格式,在函数助手框中取值处填写再生成
文件读取
线程组-》添加-》配置元件-》CSV Data Set config

4)jmeter压测指标
线程组-添加-聚合报告可以看到并发用户数、响应时间(越快越好)、tps(服务端每秒钟处理的请求数 越大越好)。
5)用JSON Path PostProcessor关联获取返回信息
安装JSON Path PostProcessor插件
请求-》添加-》后置处理器-》SON Path PostProcessor
根据返回json参数中的对应数据进行提取,例如sign对应的k值是login_info即$.login_info.sign

6)操作数据库步骤
1、安装mysql-connector-java-5.1.7-bin.jar,放到jmeter安装目录的lib目录下
2、测试计划-浏览,添加mysql-connector-java-5.1.7-bin.jar
3、线程组-添加-配置元件-JDBC Connection Configuration,填写数据库连接

4.线程组-添加-sampler-JDBC Request
选择操作类型,查询选择select statement 只限单条查询,如果多条查询可选择Callable Statement(不限格式)但除了最后一条sql,其他sql需要用;来结束, insert语句选择Callable Statement

同时,在这我为大家准备了一份软件测试视频教程(含面试、接口、自动化、性能测试等),就在下方,需要的可以直接去观看。
【2024最新版】Python自动化测试15天从入门到精通,10个项目实战,允许白嫖。。。
相关文章:
软件测试之接口测试(Postman/Jmeter)
🍅 视频学习:文末有免费的配套视频可观看 🍅 点击文末小卡片,免费获取软件测试全套资料,资料在手,涨薪更快 一、什么是接口测试 通常做的接口测试指的是系统对外的接口,比如你需要从别的系统来…...
14 卡尔曼滤波及代码实现
文章目录 14 卡尔曼滤波及代码实现14.0 基本概念14.1 公式推导14.2 代码实现 14 卡尔曼滤波及代码实现 14.0 基本概念 卡尔曼滤波是一种利用线性系统状态方程,通过系统输入输出观测数据,对系统状态进行最优估计的算法。由于观测数据包括系统中的噪声和…...
计算机视觉 图像融合技术概览
在许多计算机视觉应用中(例如机器人运动和医学成像),需要将来自多幅图像的相关信息集成到一幅图像中。这种图像融合将提供更高的可靠性、准确性和数据质量。 多视图融合可以提高图像的分辨率,同时恢复场景的 3D 表示。多模态融合结合了来自不同传感器的图像,称为多传感器融…...
计算机网络课程实训:局域网方案设计与实现(基于ensp)
文章目录 前言基本要求操作分公司1分公司2总部核心交换机配置实现内部服务器的搭建acl_deny部分用户与服务器出口出口防火墙配置 前言 本篇文章是小编实训部分内容,内容可能会有错误,另外ensp对电脑兼容性及其挑剔,在使用之前一定要安装好。…...
【安全开发】内网扫描器
文章目录 前言现实现的功能较少后序开发会逐步加入简单漏洞探探测和代理功能。 一、开发过程1.项目结构2.main.go3.core模块3.1 scanner.go3.2 service.go 4.bruteforc4.1 bruteforce.go 二、使用步骤 前言 为什么要写这个? fscna被杀的概率太高(哪天二…...
ESP32-C3模组上跑通MQTT(5)
接前一篇文章:ESP32-C3模组上跑通MQTT(4) 本文内容参考: 《ESP32-C3 物联网工程开发实战》 一分钟了解MQTT协议 ESP32 MQTT API指南-CSDN博客 ESP-IDF MQTT 示例入门_mqtt outbox-CSDN博客 ESP32用自签CA进行MQTT的TLS双向认证通信_esp32 mqtt ssl-CSDN博客 特此致谢!…...
Arduino - LED 矩阵
Arduino - LED 矩阵 Arduino - LED Matrix LED matrix display, also known as LED display, or dot matrix display, are wide-used. In this tutorial, we are going to learn: LED矩阵显示器,也称为LED显示器,或点阵显示器,应用广泛。在…...
设计模式 - Observer Pattern 观察者模式
文章目录 定义观察者模式的实现构成构成UML图 观察者模式的代码实现场景代码实现 总结优点缺点应用场景 其他设计模式文章: 定义 观察者模式是行为型模式的一种,它定义对象间的一种一对多的依赖关系,使得每当一个对象改变状态,它…...
【面试系列】C++ 高频面试题
欢迎来到我的博客,很高兴能够在这里和您见面!欢迎订阅相关专栏: ⭐️ 全网最全IT互联网公司面试宝典:收集整理全网各大IT互联网公司技术、项目、HR面试真题. ⭐️ AIGC时代的创新与未来:详细讲解AIGC的概念、核心技术、…...
程序猿大战Python——实现简单的图书馆系统操作
步骤1:安装和导入库 首先,确保已经安装了 pymysql 库。如果没有安装,请执行以下命令: pip install pymysql 然后,导入必要的库: import pymysql 步骤2:创建数据库和表的函数 编写一个函数来…...
液体粒子计数器的原理及常见型号选择 lighthouse代理商北京中邦兴业
液体颗粒计数用于测量液体样品中颗粒的大小和分布。通过用激光二极管照射液体样品并检测散射光来测量颗粒分布和尺寸。散射光的性质与粒子大小的大小有关。液体颗粒计数器可用于批量取样或在线(连续监测)应用,如水处理厂,或用于…...
Java知识点整理 16 — Spring Bean
在之前的文章 Java知识点整理 8 — Spring 简介 中介绍了 Spring 的两大核心概念 IoC 和 AOP,但对 Spring Bean 的介绍不全面,本文将补充 Spring 中 Bean 的概念。 一. 什么是 Spring Bean 在 Spring 官方文档中,对 bean 的定义为…...
Nvidia Jetson/RK3588+AI双目立体相机,适合各种割草机器人、扫地机器人、AGV等应用
双目立体视觉是基于视差原理,依据成像设备从不同位置获取的被测物体的图像,匹配对应点的位置偏移,得到视差数据,进而计算物体的空间三维信息。为您带来高图像质量的双目立体相机,具有高分辨率、低功耗、远距离等优点&a…...
springboot使用feign调用不依赖cloud
在使用spring boot调用第三方api中,常用的是okhttp、apache http client等,但是直接使用下来还是有点繁琐,需要手动转换实体。 在springcloud中有个openfeign调用,第一次体验到调用接口还能这么丝滑。注解写道接口上,…...
springboot中使用springboot cache
前言:SpringBoot中使用Cache缓存可以提高对缓存的开发效率 此图片是SpringBootCache常用注解 Springboot Cache中常用注解 第一步:引入依赖 <!--缓存--><dependency><groupId>org.springframework.boot</groupId><artifactId…...
Promise,async/await的运用
一,了解Promise Promise是异步编程的一种解决方案,它是一个对象,可以获取异步操作的消息,它的出现避免了地狱回调。 (1)Promise的实例有三个状态: Pending(进行中) Re…...
图论·多源最短路径Floyddijsktra
例题地址 多源最短路径 多个源点多个终点可以使用Floyd算法直接求各源点到终点的最短距离,也可以直接多次使用dijsktra算法求单源点到终点的最短距离 Floyd算法 使用条件 多源最短路径权值正负皆可 核心思想:动态规划 子问题: 设(A,B)…...
微服务 | Springboot整合GateWay+Nacos实现动态路由
1、简介 路由转发 执行过滤器链。 网关,旨在为微服务架构提供一种简单有效的统一的API路由管理方式。同时,基于Filter链的方式提供了网关的基本功能,比如:鉴权、流量控制、熔断、路径重写、黑白名单、日志监控等。 基本功能…...
做google SEO 有哪些好用的工具?这12款谷歌SEO工具值得收藏!
1、Google Trends 谷歌旗下一款基于搜索数据推出的一款免费分析工具 外贸人有句老话,七分靠选品,三分靠运营。在你开始做独立站之前,在你不清楚你的行业在Google上面能否有足够的流量时,那么Google Trends则是你最好的工具。 你只…...
【变频调速在锅炉引风机控制中的应用】
变频调速在锅炉引风机控制中的应用 变频器的选型 变频器是利用电力半导体器件的通断作用将工频电源变换为另一种频率的电能控制装置,能宏观对交流异步电机软启动,变频调速,提高运转精度,改变功率因数,过流/过压/过载保护等功能,国内技术较领先的品牌有汇川、欧瑞(原烟台…...
STM32博物馆环境监控系统设计与实现
基于STM32的博物馆展柜环境监控系统设计1. 项目概述1.1 系统背景文物保护工作中,展柜微环境稳定性直接影响文物保存状态。传统人工巡检方式存在响应滞后、数据不连续等问题。本项目设计了一套基于STM32的智能化环境监控系统,可实时监测温湿度、光照、烟雾…...
快速体验Qwen3-0.6B-FP8:无需下载模型,开箱即用的AI文本生成服务
快速体验Qwen3-0.6B-FP8:无需下载模型,开箱即用的AI文本生成服务 1. 为什么选择Qwen3-0.6B-FP8? Qwen3-0.6B-FP8是Qwen系列最新推出的轻量级语言模型,采用FP8量化技术大幅降低了显存需求。相比传统模型,它具有以下突…...
Windows服务器部署:OpenClaw守护进程+Qwen3-32B镜像长期运行
Windows服务器部署:OpenClaw守护进程Qwen3-32B镜像长期运行 1. 为什么需要服务器级部署? 去年我尝试在个人笔记本上运行OpenClaw时,经常遇到两个头疼的问题:一是夜间执行任务时电脑休眠导致流程中断,二是长时间运行后…...
AR.js终极指南:在Web浏览器中实现高效增强现实的完整解决方案
AR.js终极指南:在Web浏览器中实现高效增强现实的完整解决方案 【免费下载链接】AR.js Image tracking, Location Based AR, Marker tracking. All on the Web. 项目地址: https://gitcode.com/gh_mirrors/arj/AR.js AR.js是一个轻量级JavaScript库࿰…...
Flutter 实现点击任意位置收起键盘的最佳实践
痛点 在 Flutter 开发中,TextField 聚焦后会弹出键盘,关闭键盘通常需要: 点击系统返回键点击输入框外的空白区域(但很多情况下点击空白区域也没反应)点击其他输入框(键盘会切换到另一个输入框,不…...
Struts2拦截器实战:从零构建权限控制与日志记录
1. Struts2拦截器机制解析 Struts2拦截器是框架最核心的机制之一,它采用AOP(面向切面编程)思想,在Action执行前后插入自定义逻辑。想象一下拦截器就像地铁安检系统:每个乘客(请求)都必须经过安检…...
终极指南:如何在Foobar2000中安装和配置ESLyric逐字歌词源
终极指南:如何在Foobar2000中安装和配置ESLyric逐字歌词源 【免费下载链接】ESLyric-LyricsSource Advanced lyrics source for ESLyric in foobar2000 项目地址: https://gitcode.com/gh_mirrors/es/ESLyric-LyricsSource 想要在Foobar2000中享受精准的逐字…...
douyin-downloader:抖音视频批量下载解决方案
douyin-downloader:抖音视频批量下载解决方案 【免费下载链接】douyin-downloader 项目地址: https://gitcode.com/GitHub_Trending/do/douyin-downloader 在数字内容爆炸的时代,视频资源的高效管理已成为内容创作者、教育工作者和社交媒体运营者…...
解决Redis测试环境搭建难题的try.redis工具:零配置交互式终端功能全解析
解决Redis测试环境搭建难题的try.redis工具:零配置交互式终端功能全解析 【免费下载链接】try.redis A demonstration of the Redis database. 项目地址: https://gitcode.com/gh_mirrors/tr/try.redis 在日常开发中,开发者常常面临Redis测试环境…...
WordPress主题开发实战:从零开始搭建你的第一个自定义主题(2024最新版)
WordPress主题开发实战:从零开始搭建你的第一个自定义主题(2024最新版) 如果你正准备踏入WordPress主题开发的世界,这篇文章将带你从零开始构建一个完整的自定义主题。不同于简单的仿制或修改现有主题,我们将深入探讨如…...
