参数化CSV Data Set config元件
CSV Data Set config可以从指定的文件(一般是文本文件)中一行一行地提取文本内容,根据分隔符拆解这一行内容并把内容与变量名对应上,然后这些变量就可以供取样器引用了
Name(名称):可以随意设置,最好有实际意义。
Comments(注释):可以随意设置,可以为空
Filename(文件名称):引用文件地址。可以是相对路径,可以是绝对路径。相对路径的根节点是Jmeter的启动目录(%JMETER_HME%in)。也可以使用Jmeter中的变量来参数化路径如${paraUrl}。
File encoding(文件编码格式):建议使用UTF-8保存文件。
Variable Names(comma-delimited):定义的参数名称,用逗号隔开,将会与参数文件中的参数对应。如果这里的参数个数多余参数文件的列数,多余的参数取不到值。
Ignore first line(only used if Variable Name is not empty):是否忽略第一行数据,当参数名称不为空时生效。
Delimiter(use ‘ ’ for tab):分隔符,默认为逗号;也可使用tab,如果参数文件用tab分隔,这里填写“ ”。
Allow quoted data?:是否允许带双引号的数据。
(1) 如果数据带有双引号且此项设置TRUE,则会自动去掉数据中的引号使能够正常读取数据,且即使引号之间的内容包含有分隔符时,仍作为一个整体而不进行分隔。如:"2,3"-->2,3
(2) 如果数据带有引号且此项设置为FALSE,则读取数据报错;
(3) 如果希望双引号字段中间再包含双引号,则需要加两个双引号来代表单个双引号。如:"4""5"-->4"5
Recycle on EOF?:是,循环遍历参数文件;否,参数文件遍历完成后不循环。
Stop thread on EOF?:到了文件尾是否停止线程,True—停止,False—不停止;
注意:当Recycle on EOF设置为True时,此项设置无效。
Sharing mode(共享模式):
(1) All threads-所有线程共享CSV数据(包括统一测试计划中的不线程组),每个线程依次读取数据,互不重复。
不管是单个线程组还是多个线程组,每个线程都是依次取下一行。
并发数(Number of threads(users))和循环数(loop count)都会读取不同的csv数据,但是同一线程组内的多个sampler总是取相同的值。
(2)Current thread group—当前线程组,在此元件作用范围内,以线程组为单位,每个线程组内的线程共享csv数据,依次读取数据,互不重复;
以线程组为单位,每个线程组内的线程都会从第1行开始取值并依次往下进行取值。
(3)Current thread—当前线程,在此元件作用范围内,每次循环中所有线程取值一样;
每个线程都会从第1行开始取值并依次往下进行取值,在同一次循环中所有的线程取值一样。