jmeter--CSV数据文件设置--请求体设置变量

目录

一、示例

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

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

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

二、CSV数据文件设置

[1、CSV Data Set Config 配置选项说明](#1、CSV Data Set Config 配置选项说明)

[2、示例 CSV 文件内容](#2、示例 CSV 文件内容)

[3、配置 CSV Data Set Config](#3、配置 CSV Data Set Config)

[4、使用 CSV 数据](#4、使用 CSV 数据)


一、示例

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

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

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

此处引用步骤1中的文件;

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

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

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

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

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

二、CSV数据文件设置

在 JMeter 中,使用 CSV Data Set Config 元件可以让你从外部的 CSV 文件读取数据,并在多个请求中动态地使用这些数据。这对于进行负载测试时模拟多个用户的不同输入是非常有用的。

1、CSV Data Set Config 配置选项说明

在 CSV Data Set Config 中,你可以设置以下几个关键参数:

  • 文件名 (Filename):指定 CSV 文件的路径。可以是相对路径(相对于 JMeter 的 bin 目录)或者绝对路径。例如:/path/to/your/data.csv

    如果你希望文件路径在不同操作系统中都能兼容,使用双斜杠(\\)或正斜杠(/)分隔路径。

    注意:如果 CSV 文件位于 JMeter 的 bin 目录下,可以直接使用文件名,例如 data.csv

  • 文件编码 (File encoding):用于设置 CSV 文件的字符编码。如果 CSV 文件是 UTF-8 编码,可以选择 UTF-8,否则根据文件的编码格式进行选择。默认值通常为 UTF-8。

  • 变量名 (Variable Names):指定 CSV 文件中每一列对应的变量名,多个变量名用逗号分隔。例如,如果 CSV 文件有三列:username, password, email,可以在这里输入:username, password, email。这些变量名将在后续的请求中使用。

  • 跳过第一行 (Skip First Line):如果 CSV 文件的第一行是表头(即列名),勾选此项。这样,JMeter 会跳过第一行并从第二行开始读取数据。

  • 共享数据 (Recycle on EOF?):如果勾选此项,当文件中的数据被读取完后,JMeter 会重新从头开始读取数据。如果不勾选,则会在文件数据读取完之后停止。

  • 按行分隔数据 (Stop thread on EOF?):如果勾选此项,当前线程会在 CSV 文件中的数据被读取完后停止。如果不勾选,线程会继续执行,即使 CSV 文件中的数据已读完。

2、示例 CSV 文件内容

假设你有一个 CSV 文件 user_data.csv,内容如下:

username,password,email
user1,pass1,user1@example.com
user2,pass2,user2@example.com
user3,pass3,user3@example.com

3、配置 CSV Data Set Config

对于上面的 CSV 文件,你需要进行以下配置:

  • 文件名 (Filename):输入 user_data.csv(确保文件路径正确)。
  • 变量名 (Variable Names):输入 username, password, email
  • 跳过第一行 (Skip First Line):勾选此项,因为文件的第一行是列头。

4、使用 CSV 数据

在 JMeter 中使用从 CSV 文件读取的数据时,可以通过 ${variableName} 语法来引用变量。例如:

  • 在 HTTP 请求的参数中使用 CSV 数据:
    • username: ${username}
    • password: ${password}
    • email: ${email}

这样,JMeter 会在每次请求中动态地从 CSV 文件中读取不同的用户信息。

相关推荐
测试老哥12 小时前
Jmeter实战:编写博客标签模块增删改查自动化脚本和压测
自动化测试·软件测试·测试工具·jmeter·职场和发展·测试用例·压力测试
灞波儿奔、和奔波儿灞12 小时前
Jmeter-性能测试
jmeter
cmgdxrz1 天前
性能测试05|JMeter:分布式、报告、并发数计算、性能监控
分布式·jmeter
记录测试点滴2 天前
【JMeter】配置元件Config Element
数据库·jmeter
cmgdxrz2 天前
性能测试04|JMeter:连接数据库、逻辑控制器、定时器
jmeter
zfj3212 天前
JMeter线程组Duration和循环次数设置冲突后,Duration优先级高
jmeter·duration·循环次数·线程组·持续时间
小大力2 天前
简单的jmeter数据请求学习
java·学习·jmeter
测试者家园3 天前
JMeter + Grafana +InfluxDB性能监控 (二)
自动化测试·软件测试·jmeter·性能测试·grafana·性能监控·质量效能
讓丄帝愛伱3 天前
使用JMeter对Linux生产服务器进行压力测试
linux·jmeter·压力测试
云采3 天前
JMeter 的 If Controller:开启性能测试的智能大门
测试工具·jmeter·压力测试