在JMeter中,如果你想让线程组循环读取文件中的数据并发送请求,直到文件中的数据用尽后自动停止线程组,可以采用CSV Data Set Config元件配合合适的线程组设置来实现。
以下是如何配置的具体步骤:
步骤 1: 添加CSV Data Set Config
1. 右键点击你的线程组,选择“添加”(Add)> “配置元件”(Config Element)> “CSV Data Set Config”。
2. 在CSV Data Set Config配置界面,设置以下参数:
• 文件名(Filename):浏览并选择包含数据的CSV文件路径。 • 变量名称(Variable Names):逗号分隔的变量列表,对应CSV文件中的列名。 • 回收期(Recycle on EOF):如果设置为False,当文件数据读取完毕后,不会重新开始读取;如果希望读完就停止,保持False。 • 停止线程(Stop thread on EOF):设置为True,这样当文件数据读取完毕后,对应的线程将会停止执行。 • 共享模式(Sharing mode):根据你的测试需求选择,通常如果每个线程读取不同的数据行,选择“当前线程”(Current thread)。步骤 2: 配置线程组
1. 在线程组设置中,确保Loop Count(循环次数)设置为“永远”(Forever),或者设置为一个大于你预计能完成所有数据读取的大数字,
但如果你设置了CSV Data Set Config的Stop thread on EOF为True,实际上线程会在数据读完后自动停止,Loop Count的设置在这种情况下不是必须的。
步骤 3: 使用变量
1. 在你的HTTP请求或其他需要使用CSV数据的取样器中,通过${变量名}的形式引用CSV Data Set Config中定义的变量。
示例:
假设你有一个CSV文件,里面包含了用户ID和密码两列,你想要为每个用户ID发起登录请求。你已经在CSV Data Set Config中设置了Variable Names为:userId,password,并且设置了Stop thread on EOF为True。
然后,在你的HTTP请求中,你就可以这样使用变量:
• 请求URL:http://example.com/login
• 方法:POST
• Body Data 或 Parameters:
userId=${userId}
password=${password}
这样,JMeter会为CSV文件中的每一行数据发起一个请求,一旦所有数据都被读取并使用过,相应的线程就会自动停止。
标签:jmeter,读取,压测,Data,Set,线程,CSV,Config From: https://www.cnblogs.com/yan-test/p/18243889