在做测试时,会遇到一种需求:在大量数据的情况下,数据不能重复或者需要自增,基于这种形式,我们可以考虑使用计数器。

计数器(counter): 计数器配置允许用户配置起始点,最大值和增量。 计数器将从开始循环到最大,然后从开始重新开始,继续进行,直到测试结束计数器使用long存储的值,所取的范围是2^63——2^63-1。

下面按照步骤,具体的讲解一下如何使用计数器。

1、启动jmeter,添加线程组,右键添加配置元件——计数器

计数器界面如下:


下面,我们来具体讲解一下各个参数的含义:

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

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

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

Number format:可选格式,比如0000,格式化为0001,0002;默认格式为Long.toString(),非必填,默认值为0。(PS:Format属性,就是类似于格式匹配,若这里设置了000000,而我要发送的是225,那么最终发送的数据会匹配成000225这个格式)

引用名称(Reference Name):用于控制在其它元素中引用该值,形式:name,其他参数需要引用,就写成${name}

与每用户独立的跟踪计数器(Track Counter Independently for each User):如果不勾选,则用户user1 获取值为1,用户user2获取的值可能为1+递增设置的数据;

 

但是一旦勾选,即独立的,每个用户有自己的值:比如用户user1 获取值为1,用户user2获取值为2,但是一旦设置的多长时间循环,那么用户1一直是1,用户2循环多少次仍然是2。

 

 

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

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

2、具体过程(待完善)

①计数器设置

②取样器设置

③结果树请求

从上图可以看出,计数器成功的生成了我们所需的值。

PS:以上就是计数器的使用方法;为了方便演示,请求地址和路径是随便选用的。

内容来源于网络如有侵权请私信删除