JMeter学习笔记(十一) 关于 CSV Data Set Config 的 Sharing mode 对取值的影响
关于 CSV Data Set Config 的一些介绍之前已经梳理过了,可以参考: https://www.cnblogs.com/xiaoyu2018/p/10184127.html 。
今天主要是对于HTTP请求读取CSV文件的数据的一些思路整理,记录的步骤可能比较啰嗦,但有对比就比较好理解。
首先,先添加相应的测试计划、线程组、HTTP请求 以及 CSV Data Set Config


1、测试计划的线程数为1,循环数为1的前提下,修改Sharing mode
数据:线程组A(请求A1),线程组B(请求B1),线程组C(C1)
当有多个线程时:
All threads : 按照执行顺序,每个线程请求行一行数据
(A1,A2,A3取第一行数据,B1,B2,B3取第二行数据;C1,C2,C3取第三行数据)
Current thread group : 每个线程组都是取的第一行数据
(A1,A2,A3取第一行数据,B1,B2,B3取第一行数据;C1,C2,C3取第一行数据)
Current thread : 每个请求的每个线程都是从第一行数据开始取
(A1,A2,A3取第一行数据,B1,B2,B3取第一行数据;C1,C2,C3取第一行数据)



2、测试计划的线程数为n,循环数为1的前提下,修改Sharing mode
数据:线程组A(请求A1,A2,A3),线程组B(请求B1,B2,B3),线程组C(C1,C2,C3)
当有多个线程时:
All threads : 同一个线程组中的所有请求的第n个线程都是取同一行数据,但是所有线程组,都是取新的一行数据
(A1,A2,A3第一次取第一行数据,第二次去第二行数据;B1,B2,B3第一次取第三行数据,第二次取第四行数据;C1,C2,C3第一次取第五行数据,第二次取第六行数据)
Current thread group : 线程组中,每个请求有n个线程,从线程1-n都是从第一行数据开始取
(A1,A2,A3第一次取第一行数据,第二次去第二行数据;B1,B2,B3第一次取第一行数据,第二次取第二行数据;C1,C2,C3第一次取第一行数据,第二次取第二行数据)
Current thread : 每个请求的每个线程都是从第一行数据开始取
(A1,A2,A3第一次取第一行数据,第二次去第一行数据;B1,B2,B3第一次取第一行数据,第二次取第一行数据;C1,C2,C3第一次取第一行数据,第二次取第一行数据)




3、测试计划的线程数为1,循环数为n的前提下,修改Sharing mode
数据:线程组A(请求A1,A2,A3),线程组B(请求B1,B2,B3),线程组C(C1,C2,C3)
当有多个线程时:
All threads : 同一个线程组中的所有请求的第n个循环都是取同一行数据,但是每一轮循环都取新一行数据,不同线程组接着上面线程组的顺序取新一行数据
(A1,A2,A3第一次循环取第一行数据,第二次循环取第二行数据,第三次循环取第三行数据;B1,B2,B3第一次循环取第四行数据,...)
Current thread group : 线程组中,每个循环都取新一行数据;不同线程组,都是从第一行开始取
(A1,A2,A3第一次循环取第一行数据,第二次循环取第二行数据,第三次循环取第三行数据;B1,B2,B3第一次循环取第一行数据,C1,C2,C3第一次循环取第一行数据,...)
Current thread : 每一个请求的线程,每个循环都取新一行数据
(A1,A2,A3第一次循环取第一行数据,第二次循环取第二行数据,第三次循环取第三行数据;B1,B2,B3第一次循环取第一行数据,C1,C2,C3第一次循环取第一行数据,...)




4、测试计划的线程数为n,循环数为n的前提下,修改Sharing mode
数据:线程组A(请求A1,A2,A3),线程组B(请求B1,B2,B3),线程组C(C1,C2,C3)
当有多个线程时:
All threads : 线程组中所有请求的同批次线程取相同数据,每个请求的每个线程、每一轮循环都取新一行数据,不同线程组接着上面线程组的顺序取新一行数据
(A1执行了 2*3=6次,分别取了第1-6行数据,A2,A3相同;B1从第1行数开始取,...)
Current thread group : 线程组中,每个线程每次循环都取新一行数据;不同线程组,都是从第一行开始取
(A1执行了 2*3=6次,分别取了第1-6行数据,A2,A3相同;B1从第1行数开始取,...)
Current thread : 每一个请求的线程,都是从第一行开始,每个循环都取新一行数据
(A1执行第一个线程,循环了3次,分别取第1-3行数据;第二个线程,还是取第1-3行数据;A2,A3相同;B1从第1行数开始取,...)




总结:
All threads : 不区分线程组,按照执行顺序,每个线程、每次循环,都会取新一行数据
Current thread group : 线程组中,每个线程、每次循环都取新一行数据;不同线程组,都是从第一行开始取
Current thread : 每一个请求的线程,都是从第一行开始,每个循环都取新一行数据
(线程数和循环数,是指线程组中配置“线程属性”)
JMeter学习笔记(十一) 关于 CSV Data Set Config 的 Sharing mode 对取值的影响的更多相关文章
- Jmeter 二次开发 将CSV Data Set Config添加从哪一行开始读数据
经常遇到性能测试的时候,有100万条数据,才用了5万条,中途因为某些原因停止了,继续用的时候, 要么要清除DB中数据,要么要清除数据源中的数据, 觉得特别麻烦, 希望改写下代码,将 Ignore fi ...
- 【Jmeter测试】如何使用CSV Data Set Config获取参数
Jmeter提供CSV Data Set Config作为参数获取的一种方式 1.文件名:csv文件的绝对路径2.文件编码:根据运行环境设置,个人常用的是mac和linux,所以这里选择UT ...
- Jmeter参数化(_csvread函数、CSV Data Set Config)
方法一.Jmeter自带的函数助手——_CSVRead函数 1.数据准备:先在excel存储数据,保存格式选择csv格式.或在记事本存储数据,列之间用英文逗号分隔,保存为txt 2.使用_csvrea ...
- jmeter配置原件之使用CSV Data Set Config参数化
测试过程中经常需要对发送的请求进行参数化,jmeter提供的CSV Data Set Config 配置元件可以很好的对请求数据进行参数化,下面介绍使用CSV Data Set Config参数化 1 ...
- Jmeter(7)参数化csv data set config
接口测试同一变量或同一组变量不同值时,可通过csv data set config配置数据 1.创建文本文件,写入参数值,一个或一组值为一行,保存为.csv文件 2.创建测试计划,配置元件添加csv ...
- 学习笔记 - 深究Bitmap压缩避免OOM的核心inSampleSize的最佳取值
/** * 测试代码,通过在SDCard根目录放置几种不同大小的图片, 来自动测试压缩方式是否有效同时看是否会内存不够. * * @since * By:AsionTang * At:2014年3月2 ...
- jmeter参数化之CSV Data Set Config
在jmeter中,可以用CSV Data Set Config实现参数化. 1.准备参数化数据
- jmeter学习笔记--线程组
jmeter组件:线程组 是什么? 进程:一个正在执行的程序对应一个进程 线程:进程中的执行线索(一个进程中有多个执行线索) 线程组:按照线程性质对线程进行分组 并发执行:多个线程同时进行 特点 ...
- CSV Data Set Config设置
Jmeter参数化常用的两种方法: 1.使用函数助手 2.CSV Data Set Config 本章主要讲解CSV Data Set Config设置 1.Filename:文件名,指保存信息的文件 ...
随机推荐
- EF分组后把查询的字段具体映射到指定类里面的写法
//先做基本查询 var querySql = from l in _logClinicDataOperationRepository.Table select new LogClinicDataOp ...
- POJ-1469 COURSES---二分图最大匹配--匈牙利算法
题目链接: https://vjudge.net/problem/POJ-1469 题目大意: 给你p门课程和n个学生,一个学生可以选0门,1门,或者多门课程,现在要求一个由p个学生组成的集合,满足下 ...
- 课程设计__继承与派生,重载<<
///继承与派生 #include <iostream> using namespace std; class Point { public: Point (,):x(a),y(b) {} ...
- Spring是如何管理Bean
容器是什么?spring中是如何体现的?一直有疑惑,这两天看了一下Spring管理bean的Demo,对于Spring中的容器有了简单的认识. 我们知道,容器是一个空间的概念,一般理解为可盛放物体的地 ...
- 【转】Xcode真机测试could not find developer disk image解决方法
在使用Xcode进行真机调试的时候,有时根据真机的系统不同,会出现could not find developer disk image 错误,这是由于真机系统过高或者过低,Xcode中没有匹配的配置 ...
- prepareStatament和Statement和callableStatement的区别
关系与区别 Statement.PreparedStatement和CallableStatement都是接口(interface) Statement 1.Statement接口提供了执行语句和获取 ...
- 字节流, FileOutputStream类,FileInputStream类,复制文件,字符流
字节输出流OutputStream OutputStream此抽象类,是表示输出字节流的所有类的超类.操作的数据都是字节 基本方法: 子类可继承调用以上方法 FileOutputStream类 构造方 ...
- java使用优先级队列实现哈夫曼编码
思路: 构建小根堆 根据小根堆实现哈夫曼树 根据哈夫曼树对数据进行编码 代码实现如下: /** * @Author: DaleyZou * @Description: 使用java实现一个哈夫曼编码的 ...
- java使用apache-poi生成excel表格
public static void main(String[] args) throws IOException { // TODO Auto-generated method stub //创建一 ...
- python__高级 : 动态添加 对象属性, 类属性, 对象实例方法, 类静态方法, 类方法
给对象添加实例属性,可以直接这样 t.age = 18 ( 假设 t = Test() ) 给类添加类属性 , 也可以直接这样 Test.age = 18 那给对象添加实例方法,可以在类外面 ...