[JM_11]JMeter内置函数之__StringFromFile、__counter函数

__StringFromFile 函数

__StringFromFile 函数:实现从一个文件中读取一个字符串,用来实现参数化;若读取or打开此文件时发生错误,则会返回"**ERR**"字符串

[JM_11]JMeter内置函数之__StringFromFile、__counter函数_第1张图片

PS:
1.文件读取的序列号,可理解为从第i行(起始系列号)读取到第j行(结束系列号)
2.若不填写该项,则代表读取整个文件的所有字符

实践案例:

案例描述:JMeter实现利用__StringFromFile 函数从外部文件SFF.dat顺序读取每一行的字符串,作为HTTP Request之响应断言需要匹配的字符串;通过发送请求所返回响应,进行检查断言的效果

操作步骤
1)准备名字为SFF.dat的文件,其内存放有3行字符串,如下:

2)利用JMeter之Function Helper选择并配置 __StringFromFile函数

[JM_11]JMeter内置函数之__StringFromFile、__counter函数_第2张图片
[JM_11]JMeter内置函数之__StringFromFile、__counter函数_第3张图片

3)配置HTTP Request、Thread Group各项参数

[JM_11]JMeter内置函数之__StringFromFile、__counter函数_第4张图片
[JM_11]JMeter内置函数之__StringFromFile、__counter函数_第5张图片

4)保存以上配置,执行Run,查看效果

[JM_11]JMeter内置函数之__StringFromFile、__counter函数_第6张图片


__counter 函数

__counter函数:实现每次调用计数器都会产生一个新值,从1开始每次累加1。
计数器可以被配置成针对每个虚拟用户是独立的,也可以被配置成所有虚拟用户是公用的。若每个虚拟用户的计数器是独立增长的,则通常可被用于记录测试计划运行了多少遍;全局计数器通常被用于记录发送了多少次请求。

[JM_11]JMeter内置函数之__StringFromFile、__counter函数_第7张图片

【参数含义】
${__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 函数

[JM_11]JMeter内置函数之__StringFromFile、__counter函数_第8张图片

2)在HTTP Request界面添加count计数参数

[JM_11]JMeter内置函数之__StringFromFile、__counter函数_第9张图片

3)配置Thread Group,添加View Results Tree

[JM_11]JMeter内置函数之__StringFromFile、__counter函数_第10张图片

4)保存以上配置,执行Run,查看效果

[JM_11]JMeter内置函数之__StringFromFile、__counter函数_第11张图片
符合预期

你可能感兴趣的:([JM_11]JMeter内置函数之__StringFromFile、__counter函数)