jmeter脚本-请求体设置变量and请求体太长的处理

目录

1、查询接口

1.1 准备组织列表的TXT文件,如下:

1.2 添加 CSV数据文件设置 ,如下:

1.3 接口请求体设置变量,如下:

2、创建接口

2.1 见1.1

2.2 见1.2

2.3 准备创建接口的请求体TXT文件,如下:

2.4 添加 JSR223预处理程序 ,如下:

2.5 接口请求体设置变量,如下:


 

我们本次压2个接口,查询接口和创建接口:

查询接口压测时,系统中有很多组织,要求接口每次查询的组织不一样,需要把请求体的组织参数化,用到了CSV数据文件设置;

创建接口压测时,系统中有很多组织,要求接口每次创建的组织不一样,需要把请求体的组织参数化,用到了CSV数据文件设置;

另外由于创建接口的请求体太长了,直接粘贴到jmeter--http请求--消息体数据,会导致jmeter界面卡死,运行时也无法准确获取请求体,所以直接把请求体保存在一个TXT文件中,运行时从TXT文件获取请求体;本来想用CSV数据文件设置这个TXT,但是每次获取到的请求体还需要组织参数化,所以用JSR223预处理程序对请求体进行处理;

1、查询接口

查询接口压测时,系统中有很多组织,要求接口每次查询的组织不一样,需要把请求体的组织参数化,用到了CSV数据文件设置;

1.1 准备组织列表的TXT文件,如下:

114eca7067dc4122bcbb8ee9085907a3.png

1.2 添加 CSV数据文件设置 ,如下:

此处引用1.1中的文件;

定义变量名称,分别对应TXT文件中的3行数据;(后面请求体会用到这个变量名称)

如果TXT中有标题,则忽略首行,没有标题,则不忽略首行;

e35990bf7867460ebd6e0c964ca2795e.png

1.3 接口请求体设置变量,如下:

先在界面上选中某一个组织,进行查询操作,F12先获取此次查询的请求体;

在请求体中,找到组织参数,如下所示,确定为"value1",把此处value1的参数值改为"${stockOrgId}" (stockOrgId为1.2中定义的变量,脚本运行时就会循环从组织列表TXT中获取对应那一列的组织数据)

2ab4077118dd4d9da12a705225305296.png

2、创建接口

创建接口压测时,系统中有很多组织,要求接口每次创建的组织不一样,需要把请求体的组织参数化,用到了CSV数据文件设置;

另外由于创建接口的请求体太长了,直接粘贴到jmeter--http请求--消息体数据,会导致jmeter界面卡死,运行时也无法准确获取请求体,所以直接把请求体保存在一个TXT文件中,运行时从TXT文件获取请求体;本来想用CSV数据文件设置这个TXT,但是每次获取到的请求体还需要组织参数化,所以用JSR223预处理程序对请求体进行处理;

2.1 见1.1

2.2 见1.2

2.3 准备创建接口的请求体TXT文件,如下:

7e930efc8b7b4e9e905b6654ac438c48.png

2.4 添加 JSR223预处理程序 ,如下:

a622d2ead33047e587052028311ecbde.png

读取变量:stockOrgIdstockOrgId_name 是从外部变量(CSV)中获取的,确保这两列存在。

内容替换:通过replace方法,将文本中的占位符stockOrgABIdstockOrgIdABname替换为相应的变量值。

存储替换内容:替换后的内容存入vars对象的savedata变量中,以便后续使用。

2.5 接口请求体设置变量,如下:

b31d30f926b7477f9e6998a6992f9b81.png

 

 

 

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

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

相关文章

SQL,力扣题目1549,每件商品的最新订单【窗口函数】

一、力扣链接 LeetCode_1549 二、题目描述 表: Customers ------------------------ | Column Name | Type | ------------------------ | customer_id | int | | name | varchar | ------------------------ customer_id 是该表主键. 该表包含消费者的…

函数指针和指针函数的区别

函数指针和指针函数是 C 语言中两个重要的概念,它们在功能和用途上有显著区别。下面将详细解释这两者的含义、用法以及各自的示例。 一、定义 函数指针(Function Pointer): 函数指针是指向函数的指针。通过函数指针,可…

【网络】HTTP(超文本传输协议)详解

目录 引言一、HTTP的基本概念1.1 什么是HTTP?1.2 HTTP的工作流程1.3 HTTP工作流程图 二、HTTP请求与响应2.1 HTTP请求格式2.2 HTTP响应格式 三、常见的HTTP状态码3.1 其他状态码示例 四、HTTP版本的演变4.1 HTTP/1.04.2 HTTP/1.14.3 HTTP/24.4 HTTP/3 五、HTTP的安全…

卸载 Adobe Genuine Software Client

一、问题描述 使用破jie版Adobe Acrobat Pro DC软件后,会经常弹出以下窗口: 且上述探窗无法直接关掉。即使通过任务管理器将其临时关掉,可等过一段时间后,仍然会再次弹出,严重干扰工作进度。 二、问题解决 &#xff…

点云从入门到精通技术详解100篇-基于结构光测量的三维人脸重建及识别

目录 前言 三维人脸识别技术国内外现状 二维人脸识别研究现状 三维测量技术研究现状 三维人脸识别研究现状 2三维人脸重建及识别系统方案 2.1 基于结构光的三维人脸重建及识别系统构成 2.1.1 典型的投影光栅相位测量几何模型 2.1.1.1 平行式投影系统 2.1.1.2 交叉…

京东云雅典娜刷机步骤(需要拆机)

京东云雅典娜刷机步骤 必须拆机 必须拆机 必须拆机 刷机要用的文件 1.高通驱动文件(USB刷机必备):https://pan.quark.cn/s/6405674f981b 2.进入临时uboot的程序:https://pan.quark.cn/s/ebc1d449cb89 3.uboot固件: ht…

电子商城购物平台的设计与开发+ssm(lw+演示+源码+运行)

摘 要 随着我国经济迅速发展,人们对手机的需求越来越大,各种手机软件也都在被广泛应用,但是对于手机进行数据信息管理,对于手机的各种软件也是备受用户的喜爱,电子商城购物平台小程序被用户普遍使用,为方便…

基于 Spring Boot 和 Vue 的门票销售创新系统

作者介绍:✌️大厂全栈码农|毕设实战开发,专注于大学生项目实战开发、讲解和毕业答疑辅导。 🍅获取源码联系方式请查看文末🍅 推荐订阅精彩专栏 👇🏻 避免错过下次更新 Springboot项目精选实战案例 更多项目…

【Python】Python自习课:第一个python程序

【Python】Python自习课:第一个python程序 示例

docker-compose安装rabbitmq 并开启延迟队列和管理面板插件(rabbitmq_delayed_message_exchange)

问题: 解决rabbitmq-plugins enable rabbitmq_delayed_message_exchange :plugins_not_found 我是在docker-compose环境部署的 services:rabbitmq:image: rabbitmq:4.0-managementrestart: alwayscontainer_name: rabbitmqports:- 5672:5672- 15672:156…

103 - Lecture 2 Table and Data Part 1

SQL - Tables and Data Part 1 Relational Database Management System(RDBMS) 关系型数据库管理系统(RDBMS)是基于关系模型的数据库系统,它支持多种关系操作。关系模型是一种数据存储和检索的模型,它使用表格来组织数据&#x…

Linux云计算个人学习总结(二)

高级文件系统 一、RSYNC概述 1、作用:快速的文件复制工具(支持本地和远程),以及删除、查看等基本功能。 2、特点:支持实时(inotify、sersync)的增量备份工具3、模式:检查模式&#…

PropTypes 和 TypeScript 在 React 中的比较

文章目录 引言PropTypes什么是 PropTypes?如何使用 PropTypes优点缺点 TypeScript什么是 TypeScript?如何使用 TypeScript优点缺点 选择建议总结 引言 在 React 开发中,组件的可复用性和可维护性至关重要。为了确保组件接收到正确的 props&a…

CommunityToolkit.Mvvm如何使用

CommunityToolkit.Mvvm 是一个现代、快速和模块化的 MVVM 库,用于 .NET 应用程序。以下是如何使用 CommunityToolkit.Mvvm 的基本步骤: 安装包: 你可以通过 NuGet 包管理器安装 CommunityToolkit.Mvvm。在 Visual Studio 中,你可以…

【自动化利器】12个评估大语言模型(LLM)质量的自动化框架

LLM评估是指在人工智能系统中评估和改进语言和语言模型的过程。在人工智能领域,特别是在自然语言处理(NLP)及相关领域,LLM评估具有至高无上的地位。通过评估语言生成和理解模型,LLM评估有助于细化人工智能驱动的语言相…

mybatis源码解析-sql执行流程

1 执行器的创建 1. SimpleExecutor 描述:最基本的执行器,每次查询都会创建新的语句对象,并且不会缓存任何结果。 特点: 每次查询都会创建新的 PreparedStatement 对象。 不支持一级缓存。 适用于简单的查询操作,不…

儿童安全座椅行业全面深入分析

儿童安全座椅就是一种专为不同体重(或年龄段)的儿童设计,将孩子束缚在安全座椅内,能有效提高儿童乘车安全的座椅。欧洲强制性执行标准ECE R44/03的定义是:能够固定到机动车辆上,带有ISOFIX接口、LATCH接口的…

【React 的理解】

谈一谈你对 React 的理解 对待这类概念题,讲究一个四字口诀“概用思优”,即“讲概念,说用途,理思路,优缺点,列一遍” 。 React 是一个网页 UI 框架,通过组件化的方式解决视图层开发复用的问题&a…

对象的接口与设计模式在其中的作用

对象的接口 对象的接口定义了对象的行为和如何与外界进行交互。以下是对象接口的详细解释: 成员函数(Member Functions) 定义:成员函数是定义在类中的函数,用于实现类的行为。成员函数可以通过对象来调用&#xff0…

Pytest-Bdd-Playwright 系列教程(6):在测试步骤函数中设置别名数据共享

Pytest-Bdd-Playwright 系列教程(6):在测试步骤函数中设置别名&数据共享 前言一、步骤别名二、特性文件三、测试脚本四、运行测试五、小测验总结 前言 有的时候,为了提高可读性,我们需要使用不同的名称来声明相同的…