1、计数器简介
允许用户创建一个在线程组范围之内都可以被引用的计数器。
计数器允许用户配置一个起点,一个最大值,增量数,循环到最大值,然后重新开始,继续这样,直到测试结束。计数器使用long存储的值,取值的最大范围是2^63-1.
2、添加计数器
右键线程组->添加->配置元件->计数器
3、计数器界面如下:
1(starting value):给定计数器的起始值、初始值,第一次迭代时,会把该值赋给计数器
2(递增):每次迭代后,给计数器增加的值
3(最大值):计数器的最大值,如果超过最大值,重新设置为初始值(Start),默认的最大值为Long.MAX_VALUE,2^63-1(如果持续压测,建议最好不要设置最大值)
4(数据格式):比如0000,格式化为0001,0002
5(引用名称): 用于控制在其它元素中引用该计数器生成的值,类似参数化的变量名,例子设为 data
6(与每用户独立的跟踪计数器):换言之,这个是全局的计数器,还是说每个用户拥有自己的计数器。如果不勾选,即全局的,比如用户#1 获取值为1,用户#2获取值为2,如果是独立的,即不勾选,每个用户有自己的值,比如用户#1 获取值为1,用户#2获取值还是为1(实际测试中发现,改选项的设置似乎不起作用,还未找到更精确的资料)
7(每次迭代复原计数器)可选,仅勾选与每用户独立的跟踪计数器时可用,如果勾选了,每次线程组迭代,都会重置计数器的值。计数器在一个循环控制器内时比较有用,循环控制器执行时计数器自增,循环控制器执行完毕执行外层线程组循环时,技计数器重置。
4、实例
①计数器设置
②取样器设置
③实际取值
5、使用场景
计数器也可以作为参数化的一种方法,在多次迭代中生成固定格式的不重复的自增数据,例如注册要求手机号码不重复,购物订单号要求自增且不重复等等。
而使用其他的参数化方法,可能造数据困难(从文件中读取,需要先造好数据存储在文件中)或者无法完全避免重复(函数助手{_Random}生成随机数)