[JM_11]JMeter内置函数之__StringFromFi
__StringFromFile 函数
__StringFromFile 函数:实现从一个文件中读取一个字符串,用来实现参数化;若读取or打开此文件时发生错误,则会返回"**ERR**"字符串
PS:
1.文件读取的序列号,可理解为从第i行(起始系列号)读取到第j行(结束系列号)
2.若不填写该项,则代表读取整个文件的所有字符
实践案例:
案例描述:JMeter实现利用__StringFromFile 函数从外部文件SFF.dat顺序读取每一行的字符串,作为HTTP Request之响应断言需要匹配的字符串;通过发送请求所返回响应,进行检查断言的效果
操作步骤:
1)准备名字为SFF.dat的文件,其内存放有3行字符串,如下:
2)利用JMeter之Function Helper选择并配置 __StringFromFile函数
3)配置HTTP Request、Thread Group各项参数
4)保存以上配置,执行Run,查看效果
__counter 函数
__counter函数:实现每次调用计数器都会产生一个新值,从1开始每次累加1。
计数器可以被配置成针对每个虚拟用户是独立的,也可以被配置成所有虚拟用户是公用的。若每个虚拟用户的计数器是独立增长的,则通常可被用于记录测试计划运行了多少遍;全局计数器通常被用于记录发送了多少次请求。
【参数含义】
${__counter(FALSE,count)}
-
TRUE, for each user to have own counter, FALSE for a global counter
TRUE:每个虚拟用户的计数器保持彼此独立,与其他用户的计数器相区别(每个线程各自统计,最大数=循环次数)
FALSE:全局计数器(所有线程一起统计,如多个HTTP Request一起统计,最大数=线程数×循环次数) -
Name of variable in which to store the result (optional)
重用计数器函数创建值的引用名。引用计数器的值:${count}
实践案例
案例描述:设置线程数=3,循环次数=6,发送HTTP Request请求,通过计数器函数__counter计算每个线程独立发送的请求数
此时,对于每个线程独立计数,预期的最大计数值=循环次数=6
操作步骤:
1)利用Function Helper选择并配置 __counter 函数
2)在HTTP Request界面添加count计数参数
3)配置Thread Group,添加View Results Tree
4)保存以上配置,执行Run,查看效果
符合预期