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

如果你想从头学习Jmeter,可以看看这个系列的文章哦

https://www.cnblogs.com/poloyy/category/1746599.html

简单介绍

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

计数器

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

计数器界面介绍

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

字段介绍

字段含义
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每次线程组迭代时计数器将重置为初始值

最基础的栗子

只有计数器的情况下的栗子

线程组结构树

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

线程组属性

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

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

计数器

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

计数器最多循环计数 10 次

运行结果

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

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

计数器 + 循环控制器的栗子

线程组结构树

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

线程组属性

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

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

循环控制器

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

每个线程运行 3 次

计数器

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

计数器最多循环计数 30 次

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

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

可以看到

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

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

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

可以看到

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

计数器的一些注意事项

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

相关推荐