Jmeter系列(28)- 详解 Counter 计数器

转自:https://www.cnblogs.com/poloyy/

一、简单介绍

  • 计数器的作用:循环递增生成数字
  • 计数器使用 long 来存储值,因此取值范围是 -2 ^ 632 ^ 63-1
  • 可以在线程组任意地方添加计数器

二、计数器

img

三、计数器界面介绍

img

字段介绍

字段 含义
Starting value 初始值,long 整型,默认 0
Increment 每次迭代的递增值,默认 0,表示不增加
Maximum value 最大值,包含此值
Number format 数字可选格式
Exported Variable Name 引用名称
Track counter independently for rach user 每个用户都有一个独立的计数器
Reset counter on each Thread Group Iteration 每次线程组迭代时计数器将重置为初始值

四、最基础的例子

​ 只有计数器的情况下的例子

4.1 线程组结构树

img

4.2 线程组属性

img

​ 共有 15 个线程,模拟 15 个用户

4.3 计数器

img

​ 计数器最多循环计数 10 次

4.4 运行结果

img

​ 可以看到,因为有 15 个用户,但计数器最多循环计数 10 次,所以第一轮循环结束后会重头开始

五、计数器 + 循环控制器的例子

5.1 线程组结构树

img

5.2 线程组属性

img

​ 共有 5 个线程,模拟 5 个用户

5.3 循环控制器

img

​ 每个线程运行 3 次

5.4 计数器

img

​ 计数器最多循环计数 30 次

5.5 未勾选【与每用户独立的跟踪计数器】的运行结果

img

可以看到

  • 因为有 5 个线程,每个线程循环 3 次,一共 15 个请求,所以计数器是循环了 15 次
  • 此时计数器是对 所有线程共享 的,属于线程组全局计数器,所以计数器是累计循环了 15 次

5.6 勾选【与每用户独立的跟踪计数器】的运行结果

img

可以看到

  • 每个线程运行时,计数器都是从初始值算起的
  • 此时计数器是 每个线程独享 的,不再是公共计数器,所以每次有 新的线程运行 时,都是新的计数器开始循环计数

六、计数器的一些注意事项

使用计数器生成的变量,值的类型为 string,所以有比较之类的操作时,需要带 "" 操作

原文地址:https://www.cnblogs.com/dongye95/p/14180851.html