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

目录

1、查询接口

[1.1 准备组织列表的TXT文件,如下:](#1.1 准备组织列表的TXT文件,如下:)

[1.2 添加 CSV数据文件设置 ,如下:](#1.2 添加 CSV数据文件设置 ,如下:)

[1.3 接口请求体设置变量,如下:](#1.3 接口请求体设置变量,如下:)

2、创建接口

[2.1 见1.1](#2.1 见1.1)

[2.2 见1.2](#2.2 见1.2)

[2.3 准备创建接口的请求体TXT文件,如下:](#2.3 准备创建接口的请求体TXT文件,如下:)

[2.4 添加 JSR223预处理程序 ,如下:](#2.4 添加 JSR223预处理程序 ,如下:)

[2.5 接口请求体设置变量,如下:](#2.5 接口请求体设置变量,如下:)


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

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

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

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

1、查询接口

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

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

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

此处引用1.1中的文件;

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

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

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

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

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

2、创建接口

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

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

2.1 见1.1

2.2 见1.2

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

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

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

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

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

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

相关推荐
banyoyo7 天前
jmeter测试使用方法
jmeter
汪汪8888887 天前
jmeter压测下载功能影响本地内存的方案
jmeter
跨境数据猎手8 天前
跨境电商系统JMeter 和 Gatling 分工
jmeter
han68899 天前
jmeter操作数据库
数据库·jmeter
川石课堂软件测试11 天前
涨薪技术|0到1学会性能测试第8课-Analysis分析图
服务器·数据库·python·sql·jmeter·mysql·容器
川石课堂软件测试11 天前
JMeter异步接口测试实战
数据库·python·jmeter·mysql·kubernetes·测试用例·prometheus
zuozewei14 天前
第02篇-k6-脚本结构与生命周期
软件测试·jmeter·性能测试·k6·ai 编程
fen_fen14 天前
Jmeter5.1.1连接oracle数据库的错误复盘
数据库·jmeter·oracle
川石课堂软件测试17 天前
自动化测试|持续集成Git使用详解
git·python·jmeter·mysql·ci/cd·容器·kubernetes
wuhuhuan19 天前
JMeter 连接数据库并取值(JDBC 实战)
数据库·jmeter