Loading

Jmeter参数化-计数器

问题描述

在调试jmeter压测脚本的时候,需要准备大量消耗数据来应对高并发过程中,请求参数不可重复的情况

难点

  1. 不可重复 (用${_Random}容易产生重复数据)
  2. 数据量比较大 (用CSV Data Set Config更适合适量并可重复使用的参数化数据)

 

计数器(counter)

特点

  • 可产生大量数据
  • 不重复
  • 递增

允许用户创建一个在线程组之内都可以被引用的计数器

计数器允许用户配置一个起点,一个最大值,增量数,循环到最大值,然后重新开始,继续这样,直到测试结束。计数器使用long存储的值,所取的范围是2^63——2^63-1

 

添加方式

应用

 

启动(start):给定计数器的起始值、初始值,第一次迭代时,会把该值赋给计数器 

递增(Increment):每次迭代后,给计数器增加的值

最大值(Maximum):计数器的最大值,如果超过最大值,重新设置为初始值(Start),默认的最大值为Long.MAX_VALUE,2^63-1(如果持续压测,建议最好不要设置最大值)

Number format:可选格式,比如000,格式化为001,002;默认格式为Long.toString(),但是默认格式下,还是可以当作数字使用

引用名称(Reference Name):用于控制在其它元素中引用该值,形式:$(reference_name}

与每用户独立的跟踪计数器(Track Counter Independently for each User):全局的计数器,如果不勾选,即全局的,比如用户#1 获取值为1,用户#2获取值还是为1;

如果勾选,即独立的,则每个用户有自己的值:比如用户#1 获取值为1,用户#2获取值为2。

每次迭代复原计数器(Reset counter on each Thread Group Iteration):可选,仅勾选与每用户独立的跟踪计数器时可用;

如果勾选,则每次线程组迭代,都会重置计数器的值,当线程组是在一个循环控制器内时比较有用。

 

posted @ 2020-12-12 11:09  Binzichen  阅读(335)  评论(0编辑  收藏  举报