Jmeter系列(32)- 详解 CSV 数据文件设置

简介: Jmeter系列(32)- 详解 CSV 数据文件设置

如果你想从头学习Jmeter,可以看看这个系列的文章哦

https://www.cnblogs.com/poloyy/category/1746599.html

 

了解一哈什么是 CSV 文件


  • 为了实现简单的数据存储,是一个纯文本的文件
  • 最通用的一种文件格式,它可以非常容易地被导入各种PC表格及数据库中
  • CSV 文件可以用记事本、excel打开;用记事本打开的话,每一列数据都用逗号隔开

 

为什么要用 CSV 数据文件?


  • 从外部导入测试数据,相当于数据参数化
  • 通过从文件中导入大量的测试数据,来模拟大量真实用户发送并发请求

 

CSV 数据文件设置


image.png

CSV 数据文件设置界面介绍


image.png

字段含义

字段 含义
Filename 文件名
File encoding 文件编码
Variable Names
  • 变量名称
  • 多个变量用 , 分隔
Ignore first line
  • 忽略首行
  • 只在设置了变量名称后才生效
Delimiter
  • 分隔符
  • 默认 ,
Allow quoted data? 是否允许带引号
Recycle on EOF? 遇到文件结束符EOF 后再次循环
Stop thread on EOF? 遇到文件结束符EOF 后停止运行线程?
Sharing mode 线程共享模式

后续通过各种栗子来深入理解常用字段的含义

 

单个字段的栗子


csv 测试数据

image.png

这里用记事本方式当 CSV 数据文件,共有 10 条记录

 

线程组结构树

image.png

${num} 是计数器里面声明的变量,从 1 开始递增到 15

 

线程组属性

image.png

线程数和数据量一致,都是 15

 

csv 数据文件设置

image.png

运行结果

image.png

知识点

  • 忽略首行 True:一般首行都是字段名字,比如栗子的 mobile,一般都需要忽略除非没有字段名
  • 是否允许带引号 False:可以看到有引号的三条记录 8、9、10,都还是保留了引号
  • 再次循环 True:csv 文件共有 10 条记录,但线程数有 15 个,循环 10 次后,重头开始循环;可以看到 11-15的手机号和1-5的手机号
  • 停止线程 False:取了 10 次值之后就到了文件尾部,但并不会停止运行线程,后面会举个反例

 

多个字段的综合栗子


csv 测试数据

image.png

两个字段,共有 10 条记录,最后三条记录有分别有三种引号

 

csv 数据文件设置

线程组结构树和上面栗子差不多一样,线程数仍然 = 15

image.png

和第一个例子的配置项相反:不忽略首行,允许带引号,遇到文件结束符不再循环

 

运行结果

image.png

  • 不忽略首行就会把首行的字段名都返回回来,如:1-mobile-age
  • 数据有双引号"" 时,会把双引号忽略掉, '' 单引号不算
  • EOF 是文件结束符,没有开启再次循环时,会直接返回 EOF

 

开启遇到文件结束符停止线程


还是上个栗子的线程组,只是改了下配置项

image.png

可以看到,线程数 = 15,但只有 10 条数据,当跑了 10 个线程后,没有数据了,所以停止运行

相关文章
|
7月前
|
Java 测试技术 Linux
jmeter-分布式部署之负载机的设置
jmeter-分布式部署之负载机的设置
272 2
|
6月前
|
JSON JavaScript 测试技术
掌握JMeter:深入解析如何提取和利用JSON数据
Apache JMeter教程展示了如何提取和使用JSON数据。创建测试计划,包括HTTP请求和JSON Extractor,设置变量前缀和JSON路径表达式来提取数据。通过Debug Sampler和View Results Tree监听器验证提取结果,然后在后续请求和断言中使用这些数据。此方法适用于复杂测试场景,提升性能和自动化测试效率。
|
6月前
|
Linux Windows
Jmeter设置中文语言和配置https
Jmeter设置中文语言和配置https
118 0
Jmeter设置中文语言和配置https
|
6月前
|
测试技术 Linux Apache
掌握JMeter参数化技巧:通过CSV文件实现高效登录压测
在本文中,我们将探讨如何使用 Apache JMeter 通过 CSV 数据文件进行登录性能测试参数化。首先创建一个包含用户名和密码的 `users.csv` 文件。接着在 JMeter 中,创建测试计划,添加线程组,配置 CSV 数据集,设置文件路径、编码及变量名。然后,创建 HTTP 请求并添加参数,使用 `${username}` 和 `${password}` 引用 CSV 中的数据。最后,添加监听器如查看结果树和聚合报告以分析测试结果。通过这种方法,能更有效地模拟真实用户行为,提高测试覆盖率,助力性能瓶颈的发现和优化。
|
7月前
|
监控 数据可视化 Java
性能工具之Jmeter 后置监听器可视化数据逻辑
【2月更文挑战第29天】性能工具之Jmeter 后置监听器可视化数据逻辑
88 2
性能工具之Jmeter 后置监听器可视化数据逻辑
|
7月前
|
存储 NoSQL 测试技术
JMeter Redis 数据集 vs CSV 数据集性能对比
【2月更文挑战第27天】JMeter Redis 数据集 vs CSV 数据集性能对比
131 1
JMeter Redis 数据集 vs CSV 数据集性能对比
|
Java Windows
Jmeter安装使用(附下载文件和TPS工具)
Jmeter安装使用(附下载文件和TPS工具)
586 1
|
测试技术 数据安全/隐私保护
jmeter--全局参数设置与CSV数据导入
jmeter--全局参数设置与CSV数据导入
|
2月前
|
测试技术 持续交付 Apache
Python性能测试新风尚:JMeter遇上Locust,性能分析不再难🧐
【10月更文挑战第1天】Python性能测试新风尚:JMeter遇上Locust,性能分析不再难🧐
154 3
|
3月前
|
测试技术 数据库 UED
Python 性能测试进阶之路:JMeter 与 Locust 的强强联合,解锁性能极限
【9月更文挑战第9天】在数字化时代,确保软件系统在高并发场景下的稳定性至关重要。Python 为此提供了丰富的性能测试工具,如 JMeter 和 Locust。JMeter 可模拟复杂请求场景,而 Locust 则能更灵活地模拟真实用户行为。结合两者优势,可全面评估系统性能并优化瓶颈。例如,在电商网站促销期间,通过 JMeter 模拟大量登录请求并用 Locust 模拟用户浏览和购物行为,可有效识别并解决性能问题,从而提升系统稳定性和用户体验。这种组合为性能测试开辟了新道路,助力应对复杂挑战。
117 2