当前位置: 首页 > news >正文

jmeter接口测试(一)

一、什么是接口测试?为什么要做接口测试?

接口测试:就是测试项目和项目之间,模块和模块之间,组件和组件之间的数据交互和权限鉴定(鉴权)。
前后端分离:前后端联调。mock模拟,测试左移。
基于安全考虑:

二、接口分类

内部接口:被测项目开发的接口是提供给内部系统使用。(正例)
外部接口:1、被测项目调用外部项目的接口。(正例)2、被测项目开发接口提供给外部项目使用。(正例、鉴权、反例、兼容)
粒度。
重点:接口参数传递以及接口功能的正确性,各种异常情况的容错能力,权限控制的能力,兼容性。
一般情况下,一个正常的接口可以写30个用例左右。

三、目前市场上的接口类型的全局认识

1、基于soap接口架构的接口:基于webservice协议,基于xml传输数据的。
分辨:接口地址:https://.............?wsdl    web service description language
基于工具:suapui2、基于RPC接口架构的接口:阿里的dubbo、RMI、thift
分辨:接口地址:dubbo://
springcloud微服务
基于工具:jmeter(插件)3、最核心的主流:基于restful接口架构:
分辨:增、删、改、查 (post、delete、put、get),并且这四种是同一个地址:http://192.168.0.8/user
不是非常严格:增、删、改、查(post、post、post、get)
基于工具:jmeter、postman...
jmeter+ant+git+jenkins持续集成
postman+newman+git+jenkins持续集成

四、Jmeter

jmeter依赖于java环境(jdk1.8以上)
1、安装jdk以及配置jdk的环境变量。
2、jmeter不需要安装,解压即可使用。

在这里插入图片描述

backups:备份jmx脚本
bin目录:ApachJMeter.jar : Jmeter的主要jar文件jmeter.bat : 启动文件jmeter.properties : 全局配置文件(⭐⭐⭐⭐⭐)
docs: 离线帮助文档,用于二次开发
extras:和第三方插件集成(⭐⭐⭐⭐⭐)

五、Jmeter的界面以及组件详解

组件:	测试计划线程组取样器逻辑控制器前置处理器后置处理器断言定时器配置元件监听器组件作用域:1、兄弟(同级)组件2、父组件3、兄弟组件下的子组件执行顺序:测试计划  》 线程组 》 配置元件 》 前置处理器 》定时器》逻辑控制器 》取样器 》后置处理器 》断言 》监听器

六、Jmeter接口测试流程

1、拿到api接口文档(抓包,录制),业务、地址、鉴权、入参、出参、错误码等
2、编写接口测试用例以及评审正例、鉴权反例、参数反例、兼容,其他特殊场景(接口次数限制,黑名单,接口分页)
3、执行接口测试
4、团队协作以及持续集成。

七、Jmeter接口测试实战

json格式
http协议:请求和响应
请求:请求行、请求头、请求正文
响应:响应行、响应头、响应正文https协议默认的端口为:80       http协议默认的端口为:443三大配置元件:HTTP Cookie管理器 、HTTP请求默认值 、用户定义的变量

八、接口关联

1、JSON提取器 :只能作用于json数据
例如:提取access_token
在这里插入图片描述
在这里插入图片描述
json提取方式为:$.变量名

图中:Names of created variables: 新建变量名JSON Path expressions:json表达式提取Match No: 匹配次数Default Values:默认值

2、正则提取器:所有字符串
在这里插入图片描述
在这里插入图片描述

相关文章:

jmeter接口测试(一)

一、什么是接口测试?为什么要做接口测试? 接口测试:就是测试项目和项目之间,模块和模块之间,组件和组件之间的数据交互和权限鉴定(鉴权)。 前后端分离:前后端联调。mock模拟&#x…...

Java-11

淘天集团2025届春季校园招聘在线笔试-研发 1。设有一个顺序共享栈storageArray[70],其中栈X的栈顶指针top1的初值为-1,栈Y的栈顶指针top2的初值为70,通过不断进行入栈操作,直到storageArray数组已满,此时top1 top2 …...

js中常用方法整理

数据类型 typeOf()Number()parseInt()parseFloat()- * / %检测数据类型转换为数字转换为整数类型转换为浮点类型非加法的数字运算toString()Boolean()String()转换为字符串,不能转换undefined/null字符串拼接转换为布尔类型转换为字符串、所有…...

umi react+antd 判断渲染消息提示、input搜索、多选按钮组

记得map里返回的每层遍历结构都要带上key(图里没加,最近在接手react,熟悉中......

Day15-后端Web实战-登录认证——会话技术JWT令牌过滤器拦截器

目录 登录认证1. 登录功能1.1 需求1.2 接口文档1.3 思路分析1.4 功能开发1.5 测试 2. 登录校验2.1 问题分析2.2 会话技术2.2.1 会话技术介绍2.2.2 会话跟踪方案2.2.2.1 方案一 - Cookie2.2.2.2 方案二 - Session2.2.2.3 方案三 - 令牌技术 2.3 JWT令牌2.3.1 介绍2.3.2 生成和校…...

【嵌入式常用工具】Srecord使用

文件格式 -Intel 表示hex格式-Motorola 表示S19格式-BINary 表示bin格式 截取指定地址段 srec_cat input.s19 -Motorola -crop 0x80010000 0x80380000 -output output.s19 -Motorola -address-length4填充指定地址段 srec_cat input.s19 -Motorola -fill 0xFF 0x100 0x200 …...

SwiftUI基础组件之HStack、VStack、ZStack详解

文章目录 引言一、HStack(水平堆栈)1.1 基本概念1.2 基本创建1.3 常用属性1.3.1 spacing1.3.2 alignment 二、VStack(垂直堆栈)2.1 基本概念2.2 基本创建2.3 常用属性2.3.1 spacing2.3.2 alignment 三、ZStack(深度堆栈…...

第2章 深入理解Thread构造函数

Thread的构造函数。 2.1 线程的命名 在构造一个Thread时可以为其命名。 2.1.1 线程的默认命名 下面构造函数中,并没有为线程命名。 Thread() Thread(Runnable target) Thread(ThreadGroup group, Runnable target)打开源码会看到 public Thread(Runnable targe…...

PLC扫描周期和工作原理

可编程逻辑控制器(PLC)的运行原理和扫描周期是其实现工业自动化的核心机制。以下从运行原理、扫描周期组成、关键特性及优化方向等方面进行详细阐述: 一、PLC运行原理 PLC采用**循环扫描(Cyclic Scan)**的工作模式&am…...

玩转Docker | 使用Docker部署本地自托管reference速查表工具

玩转Docker | 使用Docker部署本地自托管reference速查表工具 前言一、Reference介绍Reference简介主要特点二、系统要求环境要求环境检查Docker版本检查检查操作系统版本三、部署reference服务下载镜像创建容器检查容器状态检查服务端口安全设置四、访问reference应用五、测试与…...

MySQL数据库入门到大蛇尚硅谷宋红康老师笔记 高级篇 part 2

第02章_MySQL的数据目录 1. MySQL8的主要目录结构 1.1 数据库文件的存放路径 MySQL数据库文件的存放路径:/var/lib/mysql/ MySQL服务器程序在启动时会到文件系统的某个目录下加载一些文件,之后在运行过程中产生的数据也都会存储到这个目录下的某些文件…...

跟着 Lua 5.1 官方参考文档学习 Lua (3)

文章目录 2.5 – Expressions2.5.1 – Arithmetic Operators2.5.2 – Relational Operators2.5.3 – Logical Operators2.5.4 – Concatenation2.5.5 – The Length Operator2.5.6 – Precedence2.5.7 – Table Constructors2.5.8 – Function Calls2.5.9 – Function Definiti…...

ORM框架详解:为什么不直接写SQL?

想象一下,你正在开发一个小型的在线书店应用。你需要存储书籍信息、用户数据和订单记录。作为一个初学者,你可能会想:“我已经学会了SQL,为什么还要使用ORM框架呢?直接写SQL语句不是更简单、更直接吗?” 如…...

【Server Components 解析:Next.js 的未来组件模型】

🛠️ Server Components 解析:Next.js 的未来组件模型 本文将用 3000 字 ,带你彻底掌握 React Server Components 的核心原理与实战技巧。无论你是刚接触 Next.js 的新手,还是想优化现有项目的老手,这里都有你需要的关…...

2025最新智能优化算法:改进型雪雁算法(Improved Snow Geese Algorithm, ISGA)求解23个经典函数测试集,MATLAB

一、改进型雪雁算法 雪雁算法(Snow Geese Algorithm,SGA)是2024年提出的一种新型元启发式算法,其灵感来源于雪雁的迁徙行为,特别是它们在迁徙过程中形成的独特“人字形”和“直线”飞行模式。该算法通过模拟雪雁的飞行…...

基于spring boot物流管理系统设计与实现(代码+数据库+LW)

摘 要 社会发展日新月异,用计算机应用实现数据管理功能已经算是很完善的了,但是随着移动互联网的到来,处理信息不再受制于地理位置的限制,处理信息及时高效,备受人们的喜爱。本次开发一套物流管理系统有管理员和用户…...

HTTP 和RESTful API 基础,答疑

一文搞懂RESTful API - bigsai - 博客园 1. API 路径 开头必须 /,表示绝对路径,不支持 . 或 ..(相对路径)。API 结尾 / 通常不需要,但部分框架会自动处理 / → 无 /。 ✅ 推荐 GET /api/v1/products # 资源集合…...

【数据挖掘】深度挖掘

【数据挖掘】深度挖掘 目录:1. 减少样本集的数量知识点示例 2. 对噪声比集剪枝知识点示例建立局部树代码示例(使用 Python 和 scikit - learn 库构建局部决策树)代码解释注意事项 最大超平面定义原理求解方法代码示例(使用 Python…...

OpenGL(2)基于Qt做OpenGL开发

文章目录 一、基于Qt做OpenGL开发1、环境准备2、创建OpenGL窗口3、绘制基本图形 一、基于Qt做OpenGL开发 1、环境准备 确保你已经安装了 Qt 开发环境(包含 Qt Creator),并且支持 OpenGL 开发。在创建 Qt 项目时,选择 “Qt Widget…...

使用JWT实现微服务鉴权

目录 一、微服务鉴权 1、思路分析 2、系统微服务签发token 3、网关过滤器验证token 4、测试鉴权功能 前言: 随着微服务架构的广泛应用,服务间的鉴权与安全通信成为系统设计的核心挑战之一。传统的集中式会话管理在分布式场景下面临性能瓶颈和扩展性…...

智慧医疗能源事业线深度画像分析(上)

引言 医疗行业作为现代社会的关键基础设施,其能源消耗与环境影响正日益受到关注。随着全球"双碳"目标的推进和可持续发展理念的深入,智慧医疗能源事业线应运而生,致力于通过创新技术与管理方案,重构医疗领域的能源使用模式。这一事业线融合了能源管理、可持续发…...

<6>-MySQL表的增删查改

目录 一,create(创建表) 二,retrieve(查询表) 1,select列 2,where条件 三,update(更新表) 四,delete(删除表&#xf…...

HTML 列表、表格、表单

1 列表标签 作用:布局内容排列整齐的区域 列表分类:无序列表、有序列表、定义列表。 例如: 1.1 无序列表 标签:ul 嵌套 li,ul是无序列表,li是列表条目。 注意事项: ul 标签里面只能包裹 li…...

深入理解JavaScript设计模式之单例模式

目录 什么是单例模式为什么需要单例模式常见应用场景包括 单例模式实现透明单例模式实现不透明单例模式用代理实现单例模式javaScript中的单例模式使用命名空间使用闭包封装私有变量 惰性单例通用的惰性单例 结语 什么是单例模式 单例模式(Singleton Pattern&#…...

PL0语法,分析器实现!

简介 PL/0 是一种简单的编程语言,通常用于教学编译原理。它的语法结构清晰,功能包括常量定义、变量声明、过程(子程序)定义以及基本的控制结构(如条件语句和循环语句)。 PL/0 语法规范 PL/0 是一种教学用的小型编程语言,由 Niklaus Wirth 设计,用于展示编译原理的核…...

MySQL账号权限管理指南:安全创建账户与精细授权技巧

在MySQL数据库管理中,合理创建用户账号并分配精确权限是保障数据安全的核心环节。直接使用root账号进行所有操作不仅危险且难以审计操作行为。今天我们来全面解析MySQL账号创建与权限分配的专业方法。 一、为何需要创建独立账号? 最小权限原则&#xf…...

基于TurtleBot3在Gazebo地图实现机器人远程控制

1. TurtleBot3环境配置 # 下载TurtleBot3核心包 mkdir -p ~/catkin_ws/src cd ~/catkin_ws/src git clone -b noetic-devel https://github.com/ROBOTIS-GIT/turtlebot3.git git clone -b noetic https://github.com/ROBOTIS-GIT/turtlebot3_msgs.git git clone -b noetic-dev…...

浪潮交换机配置track检测实现高速公路收费网络主备切换NQA

浪潮交换机track配置 项目背景高速网络拓扑网络情况分析通信线路收费网络路由 收费汇聚交换机相应配置收费汇聚track配置 项目背景 在实施省内一条高速公路时遇到的需求,本次涉及的主要是收费汇聚交换机的配置,浪潮网络设备在高速项目很少,通…...

Linux部署私有文件管理系统MinIO

最近需要用到一个文件管理服务,但是又不想花钱,所以就想着自己搭建一个,刚好我们用的一个开源框架已经集成了MinIO,所以就选了这个 我这边对文件服务性能要求不是太高,单机版就可以 安装非常简单,几个命令就…...

Modbus RTU与Modbus TCP详解指南

目录 1. Modbus协议基础 1.1 什么是Modbus? 1.2 Modbus协议历史 1.3 Modbus协议族 1.4 Modbus通信模型 🎭 主从架构 🔄 请求响应模式 2. Modbus RTU详解 2.1 RTU是什么? 2.2 RTU物理层 🔌 连接方式 ⚡ 通信参数 2.3 RTU数据帧格式 📦 帧结构详解 🔍…...