Jmeter系列(32)- 详解 CSV 数据文件设置
如果你想从头学习Jmeter,可以看看这个系列的文章哦
https://www.cnblogs.com/poloyy/category/1746599.html
了解一哈什么是 CSV 文件
- 为了实现简单的数据存储,是一个纯文本的文件
- 最通用的一种文件格式,它可以非常容易地被导入各种PC表格及数据库中
- CSV 文件可以用记事本、excel打开;用记事本打开的话,每一列数据都用逗号隔开
为什么要用 CSV 数据文件?
- 从外部导入测试数据,相当于数据参数化
- 通过从文件中导入大量的测试数据,来模拟大量真实用户发送并发请求
CSV 数据文件设置

CSV 数据文件设置界面介绍

字段含义
| 字段 | 含义 |
| Filename | 文件名 |
| File encoding | 文件编码 |
| Variable Names |
|
| Ignore first line |
|
| Delimiter |
|
| Allow quoted data? | 是否允许带引号 |
| Recycle on EOF? | 遇到文件结束符EOF 后再次循环 |
| Stop thread on EOF? | 遇到文件结束符EOF 后停止运行线程? |
| Sharing mode | 线程共享模式 |
后续通过各种栗子来深入理解常用字段的含义
单个字段的栗子
csv 测试数据

这里用记事本方式当 CSV 数据文件,共有 10 条记录
线程组结构树

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

线程数和数据量一致,都是 15
csv 数据文件设置

运行结果

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

两个字段,共有 10 条记录,最后三条记录有分别有三种引号
csv 数据文件设置
线程组结构树和上面栗子差不多一样,线程数仍然 = 15

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

- 不忽略首行就会把首行的字段名都返回回来,如:1-mobile-age
- 数据有双引号 "" 时,会把双引号忽略掉, '' 单引号不算
- EOF 是文件结束符,没有开启再次循环时,会直接返回 EOF
开启遇到文件结束符停止线程
还是上个栗子的线程组,只是改了下配置项

运行结果

可以看到,线程数 = 15,但只有 10 条数据,当跑了 10 个线程后,没有数据了,所以停止运行
Jmeter系列(32)- 详解 CSV 数据文件设置的更多相关文章
- Jmeter CSV数据文件设置使用之一
第一步: 在Jmeter 里,新建CSV数据文件设置,选择对应的文件,变量名称根据需要自己取,如bug,test,如下图所示: 第二步: 配置Jmetet 数据源,参数对应的名称要与CSV数据文件设置 ...
- jmeter压测学习7-登录参数化(CSV 数据文件设置)
前言 我们在压测登录接口的时候,如果只用一个账号去设置并发压测,这样的结果很显然是不合理的,一个用户并发无法模拟真实的情况. 如果要压测登录接口,肯定得准备几百,甚至上千的账号去登录,测试的结果才具有 ...
- jemeter压测, 高级应用: 发1万个请求,每个请求参数都不同, 使用CSV数据文件配置
今天接到一个压测任务, 数据源需要自己从测试环境库中取, 并且使用jemeter 请求, 每个请求参数都不相同 这里使用jemeter的 CSV数据文件来配置: 这样配置好后, 开始发送请求: csv ...
- 反爬虫:利用ASP.NET MVC的Filter和缓存(入坑出坑) C#中缓存的使用 C#操作redis WPF 控件库——可拖动选项卡的TabControl 【Bootstrap系列】详解Bootstrap-table AutoFac event 和delegate的分别 常见的异步方式async 和 await C# Task用法 c#源码的执行过程
反爬虫:利用ASP.NET MVC的Filter和缓存(入坑出坑) 背景介绍: 为了平衡社区成员的贡献和索取,一起帮引入了帮帮币.当用户积分(帮帮点)达到一定数额之后,就会“掉落”一定数量的“帮帮 ...
- Jmeter常用功能详解
嘻嘻,忙碌的一周,马上就到周四了~明天就是周五了,可以去嗨了! 这几天正式成立了一个微信订阅号,旨在免费帮助需要入门软件测试的小白! 各位走过路过的亲,欢迎订阅哦:扫描二维码即可订阅
- PHP输出缓存ob系列函数详解
PHP输出缓存ob系列函数详解 ob,输出缓冲区,是output buffering的简称,而不是output cache.ob用对了,是能对速度有一定的帮助,但是盲目的加上ob函数,只会增加CPU额 ...
- jmeter 基础功能详解
jmeter 基础功能详解 thread group:包含一组线程,每个线程独立地执行测试计划. sampler:采样器,有多种不同的sample实现,用来发起各种请求,如http请求,jdbc请求, ...
- Spring配置文件详解 – applicationContext.xml文件路径
Spring配置文件详解 – applicationContext.xml文件路径 Java编程 spring的配置文件applicationContext.xml的默 ...
- 十图详解tensorflow数据读取机制(附代码)转知乎
十图详解tensorflow数据读取机制(附代码) - 何之源的文章 - 知乎 https://zhuanlan.zhihu.com/p/27238630
随机推荐
- Java中方法的重载与重写
1.方法的名字和参数列表称为方法的签名:每个方法具有唯一与其对应的签名: 2.方法的重载:在某个类中,存在具有多个相同名字不同参数列表的方法,称之为重载: 被重载的方法必须改变参数列表(参数个数或类型 ...
- ThreadLocal Thread ThreadLocalMap 之间的关系
ThreadLocal :每个线程通过此对象都会返回各自的值,互不干扰,这是因为每个线程都存着自己的一份副本.需要注意的是线程结束后,它所保存的所有副本都将进行垃圾回收(除非存在对这些副本的其他引用) ...
- Rocket - tilelink - RegionReplicator
https://mp.weixin.qq.com/s/XZVCdt50tM6lavchGm9GRg 简单介绍RegionReplicator的实现. 1. 基本介绍 根据mask ...
- brpc长连接问题
问题: 使用了brpc的长连接,但是为何耗时和短链接一样呢? brpc文档里介绍,使用http协议,则默认使用pooled,只要连接数不超过max_connection_pool_size,则都可以使 ...
- Linux (八)服务
个人博客网:https://wushaopei.github.io/ (你想要这里多有) 1.服务的概念 操作系统中在后台持续运行的程序,本身并没有操作界面,需要通过端口号访问和操作.CentO ...
- Java实现 LeetCode 405 数字转换为十六进制数
405. 数字转换为十六进制数 给定一个整数,编写一个算法将这个数转换为十六进制数.对于负整数,我们通常使用 补码运算 方法. 注意: 十六进制中所有字母(a-f)都必须是小写. 十六进制字符串中不能 ...
- Java实现埃拉托色尼筛选法
1 问题描述 Compute the Greatest Common Divisor of Two Integers using Sieve of Eratosthenes. 翻译:使用埃拉托色尼筛选 ...
- Java实现 黑洞数
任意一个5位数,比如:34256,把它的各位数字打乱,重新排列,可以得到一个最大的数:65432,一个最小的数23456.求这两个数字的差,得:41976,把这个数字再次重复上述过程(如果不足5位,则 ...
- java实现第三届蓝桥杯古代赌局
古代赌局 [编程题](满分23分) 俗话说:十赌九输.因为大多数赌局的背后都藏有阴谋.不过也不尽然,有些赌局背后藏有的是:"阳谋". 有一种赌局是这样的:桌子上放六个匣子,编号是1 ...
- Linux 工作管理
把进程放入后台 进程后加&,这时,进程在后台是运行的 tar -zcf etc.tar.gz /etc & 在执行程序时,快速按下ctrl+z快捷键,这时,进程在后台是停止的 查看后台 ...