jmeter五种参数化方式之CSV Data Set Config参数化

 

一、用户定义的变量

一般会设置全局不变的参数,如host、账号、密码等

设置名称username,password  值王荔,123456

线程设置2次和循环设置2次,2次采样器传参和结果一样

二、用户参数

添加用户参数

设置3组参数

参数化

当线程设置线程数4个,会循环参数1 2 3 1;当循环设置4次,会循环参数1 4次;当线程设置2个,循环设置5次,会参数1和2分别循环5次

三、随机变量

添加随机变量

设置随机变量

变量名称:名称可以引用,如 ${xxx}

输出格式:列如此处输入x,那么得到结果是x1、x2之类的格式

最小值:输入生成随机数的最小数字

最大值:输入生成随机数的最大数字

分别设置10线程或10次循环,随机生成10个变量

四、计数器

添加计数器

设置计数器

启动(start) 
给定计数器的起始值、初始值,第一次迭代时,会把该值赋给计数器 
注:英文版下是Start,Jmeter的中文语言将Start翻译成了“启动”,有些歧义

递增(Increment): 
每次迭代后,给计数器增加的值

最大值(Maximum) : 
计数器的最大值,如果超过最大值,重新设置为初始值(Start),默认的最大值为Long.MAX_VALUE,2^63-1

Number format : 
可选格式,比如000,格式化为001,002。默认格式为Long.toString(),但是默认格式下,似乎还是可以当作数字使用

引用名称(Reference Name) : 
用于控制在其它元素中引用该值,形式:$(reference_name}

与每用户独立的跟踪计数器(Track Counter Independently for each User): 
换言之,这个是全局的计数器,还是说每个用户拥有自己的计数器。如果不勾选,即全局的,比如用户#1 获取值为1,用户#2获取值为2,如果是独立的,即不勾选,每个用户有自己的值,比如用户#1 获取值为1,用户#2获取值还是为1

Reset counter on each Thread Group Iteration : 
可选,仅勾选与每用户独立的跟踪计数器时可用,如果勾选了,每次线程组迭代,都会重置计数器的值。当线程组是在一个循环控制器内时比较有用
 

未勾选与每用户独立的跟踪计数器

线程10时、循环10次时,递增迭代

勾选与每用户独立的跟踪计数器

线程10时,迭代第一个变量;循环10次时,递增迭代

 

五、csv data set config参数化

添加csv data set config

设置参数文件

 

设置csv data set config

  1. Filename:文件名,指保存信息的文件目录,可以相对或者绝对路径(比如:D:\ceshi.Txt)
  2. File encoding:csv文件编码,可以不填
  3. Variable Names:变量名,多个变量用“,”分开。变量使用格式${OA_VendingMachineNum}和${Name}
  4. Delimiter:csv文件中的分隔符(用”\t”代替tab键)(一般情况下,分隔符为英文逗号)
  5. Allow quoted data:是否允许引用数据(尚不清楚)
  6. Recycle on EOF :到了文件尾处,是否循环读取参数,选项:true和false。因为CSV Data Set Config一次读入一行,分割后存入若干变量交给一个线程,如果线程数超过文本的记录行数,那么可以选择从头再次读入
  7. Stop thread on EOF:到了文件尾处,是否停止线程,选项:true和false
  • 当Recycle on EOF 选择true时,Stop thread on EOF选择true和false无任何意义,通俗的讲,在前面控制了不停的循环读取,后面再来让stop或run没有任何意义
  • 当Recycle on EOF 选择flase时,Stop thread on EOF选择true,线程4个,参数3个,那么只会请求3次
  • 当Recycle on EOF 选择flase时,Stop thread on EOF选择flase,线程4个,参数3个,那么会请求4次,但第4次没有参数可取,不让循环,所以第4次请求错误

     8. Sharing mode:共享模式,All threads –所有线程,Current thread group—当前线程组,Current thread—当前线程。经试验得出来的结果是(不考虑线程组迭代):

  • 如果测试计划中有线程组A、线程组B,A组内有线程A1到线程An,线程组B内有线程B1到线程Bn,CSV Data Set Config放在线程组A的下级组织树,不管怎么设置Sharing mode,都只针对线程组A且取之情况一样:线程A1取第一行,线程A2取第二行。CSV Data Set Config放在测试计划下级组织树(与线程组并列),情况如下 :

   All threads:测试计划中所有线程,线程组A、线程组B共用一个CSV文件,所取数据与线程实际执行顺序有关(先执行先取)。补充一点:线程组之间是并行执行,各线程实际执行时间根据Ramp-UP Period而来,如下图,若线程A、线程B均设置Ramp-Up Period:2,取之情况是:线程A1取第1行,线程B1取第2行,线程A2取第3行,线程B2取第4行。

        Current thread group:取之情况是:线程A1取第1行,线程A2取第2行,线程B1取第1行,线程B2取第2行。(线程组互不影响)

   Current thread:当前线程。A1取第一行,A2取第一行;B1取第一行,B2取第一行(均取第一行)

CSV Data Set Config默认设置,线程10个、循环10次,结果一样

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/568495.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Python】PyMuPDF模块将PDF转换为图片

上一篇文章介绍了pdf2image模块poppler将PDF转换为图片,这篇文章主要介绍另外一个模块PyMuPDF。 PyMuPDF(又名“fitz”):MuPDF的Python绑定,它是一个轻量级的PDF和XPS查看器。该库可以访问PDF,XPS&#xf…

【Liunx服务器】阿里云服务器下部署多个tomcat服务

现在有这样一个场景,一个阿里云服务器上面已经有tomcat项目和多个maven项目,现在需要在一个新项目中配置一个空的tomcat,现将具体流程记录下来。 1.下载tomcat包或者找到已下载的包 2.将tomcat的包解压到指定项目目录:/data/proj…

【测试】身份证的前世今生

在我们的测试中,经常要校验身份证的有效性,但是我们大多数人并不清楚身份证具体是如何组成的,有什么特点,下面我们就了解一下它的前世今生。 身份证由来 从1999年10月1日起,全国实行公民身份证号码制度,居民身份证编号由原15位升至18位。 根据〖中华人民共和国国家标准…

C++根据输入日期YYYY-MM-DD判断是否星期几

参考链接: https://blog.csdn.net/bible521125/article/details/50418436 https://blog.csdn.net/tojohnonly/article/details/78326633 https://blog.csdn.net/fengbingchun/article/details/54835571

【音频】音频文件格式以及相关参数

音频是个专业术语,音频一词已用作一般性描述音频范围内和声音有关的设备及其作用。人类能够听到的所有声音都称之为音频,它可能包括噪音等。 声音被录制下来以后,无论是说话声、歌声、乐器都可以通过数字音乐软件处理,或是把它制作…

python 按照当前日期创建文件

import time import os.path#获得当前系统时间的字符串 localtimetime.strftime(%Y-%m-%d %H:%M:%S,time.localtime(time.time())) print(localtimelocaltime) #系统当前时间年份 yeartime.strftime(%Y,time.localtime(time.time())) #月份 monthtime.strftime(%m,time.localti…

【Python】Python中内置的%操作符

Python中内置的%操作符可用于格式化字符串操作,控制字符串的呈现格式。Python中还有其他的格式化字符串的方式,但%操作符的使用是最方便的。 格式符为真实值预留位置,并控制显示的格式。格式符可以包含有一个类型码,用以控制显示的…

数据结构二叉树遍历求后序

注意左右子树的递归 参考自https://blog.csdn.net/hou_blog/article/details/50015503

python queue队列

作用: 解耦:使程序直接实现松耦合,修改一个函数,不会有串联关系。 提高处理效率:FIFO = 现进先出,LIF&#…

【Python】ffmpeg模块查询视频、音频信息

FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。采用LGPL或GPL许可证。它提供了录制、转换以及流化音视频的完整解决方案。 它包含了非常先进的音频/视频编解码库libavcodec,为了保证高可移植性和编解码质量&#xff…

log4j学习

依赖 <!--log4j依赖--> <dependency><groupId>log4j</groupId><artifactId>log4j</artifactId><version>1.2.17</version> </dependency><!--测试--> <dependency><groupId>org.junit.jupiter</g…

navicat连接远程mysql数据库

前提&#xff1a;保证你的navicat数据是允许外界可以连接 1.保证两台电脑应在同一局域网内 2.查询被连接数据库电脑的ip 3.在连接端&#xff0c;主机那个填入ip地址&#xff0c;用户名&#xff0c;密码等信息。测试连接 4、连接成功后&#xff0c;用此ip即为连接数据库的ho…

【Python】ffmpeg模块处理视频、音频信息

多媒体视频处理工具FFmpeg有非常强大的功能包括视频采集功能、视频格式转换、视频抓图、给视频加水印等。 这里主要介绍一下FFmpeg的一些常用参数&#xff0c;并且主要功能&#xff1a;截取视频、视频格式转换、视频分辨率转换、视频合并、提取视频、提取音频、提取图片、视频水…

【探索测试篇】探索无界,BUG无限,让程序猿头疼的测试技术

探索无界&#xff0c;BUG无限 一、修改系统时间 当功能模块中存在倒计时、计时器、时间&#xff0c;与时间有关系时&#xff0c;尝试修改系统时间&#xff0c;测试系统时间是否参与计算&#xff0c;修改系统时间是否会影响到倒计时、计时、时间等与时间有关系的模块 例&#…

【数据库】Mysql函数DATE_ADD() 增加日期/时间

有这样一个场景&#xff1a;数据库还款计划表有到期还款日字段&#xff0c;正常是每月2日。但这个字段有些是每月1日&#xff0c;现需要统一改成2日&#xff0c;可以用到DATE_ADD函数&#xff0c;但是执行时需要注意&#xff1a;只能执行一次 DATE_ADD(date,INTERVAL expr type…

python 时间函数小总结

时间戳&#xff1a;从1970年1月1日00:00:00开始按秒计算的偏移量。举个例子&#xff0c;现在是2017年6月11的下午16:54:32&#xff0c;那么print(time.time())输出的值是1497171320.99就代表现在的时间戳。 元组&#xff08;struct_time&#xff09;&#xff1a;struct_time元组…

【数据库】Mysql函数DATE_FORMAT() 显示日期/时间

上一篇文章介绍了Mysql函数DATE_ADD()&#xff0c;这篇文章主要是为了解决上次遗留的问题&#xff1a; 把问题变得更复杂一点&#xff1a;假设有两个借款&#xff0c;其中一个借款1的到期还款日为2日&#xff0c;借款2的到期还款日为10日。这个字段loan_pmt_due_date日期有多个…

fiddler抓包工具使用技巧

一、快速找所有post、get、Result code200请求 1、所有post请求的图标都是带有向右的小箭头的那种&#xff0c;如果能让所有向右的小箭头都高亮显示就好了解决方案&#xff1a;输入命令&#xff1a;post 然后点击enter键回车&#xff0c;可以看到所有的post请求都是以蓝色的底…

python文件操作小总结

os.getcwd() 方法用于返回当前工作目录 os.path.getatime(file) 输出文件访问时间 os.path.getctime(file) 输出文件的创建时间 os.path.getmtime(file) 输出文件最近修改时间

【数据库】Mysql的CONCAT()函数拼接字符串

mysql CONCAT()函数用于将多个字符串连接成一个字符串&#xff0c;是最重要的mysql函数之一&#xff1a; mysql CONCAT(str1,str2,…) 返回结果为连接参数产生的字符串。如有任何一个参数为NULL &#xff0c;则返回值为 NULL。 回到上一篇文章的问题&#xff1a;假设有两个借款…