zoukankan      html  css  js  c++  java
  • 十四、配置元件之计数器

    1、CSV Data Set Config

    这个元件被用来在参数化生成数据时使用,简单高效,容易生成有序数;只需要新建excel,然后通过拖拽、复制黏贴等方式产生不同的数据,然后读取调用即可。

    但它也有不足之处,如下:

    ①如果数据库中某些表的某些字段不允许重复(比如订单号),那么在完成一轮测试后,再次测试需要重新手动构造新的不重复的数据;

    ②excel只有数字格式才可以通过拖拽生成增长数据;

    ③数据量过大时,容易被excel修改为科学计数法;

    2、${_Random}

    ${_Random}是jmeter函数助手里面自带的一个函数,作用是返回指定的最大值和最小值之间的一个随机数。

    缺点:数值可能会重复出现;

    如果需要引用的数据量较大,且要求不能重复或者需要自增,那么可以使用计数器来实现。

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

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

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

     

    计数器界面如下:

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

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

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

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

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

    与每用户独立的跟踪计数器(Track Counter Independently for each User):全局的计数器,

    如果不勾选,即全局的,设置3个vuser,2次循环,则将生成6个不同的数值;类似于LR中的unique each interation

    如果勾选,即独立的,设置3个vuser,2次循环,每个user取值不同:比如vuser1的两次迭代取值依次为1,2,vuser2的两次迭代取值也是1,2。类似于LR中的sequential  each interation

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

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

    设置3个vuser,两次循环,则vuser1的两次迭代取值都是1,vuser2的两次迭代取值也都是1。类似于LR中的sequential once

    2、具体过程

    ①计数器设置

    ②取样器设置

    ③结果树请求内容

     

     

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

  • 相关阅读:
    VS2013 使用QCustomPlot等三方库如何配置
    error LNK1112:模块计算机类型"X64" 与目标计算机类型"X86" 冲突
    Qt 获取屏幕当前分辨率
    流程控制
    导航条和工作内容纪要
    js简介
    高度塌陷
    浮动
    文档流
    display和overflow
  • 原文地址:https://www.cnblogs.com/xysun/p/10944950.html
Copyright © 2011-2022 走看看