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文件,如下:
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 接口请求体设置变量,如下: