带有While控制器的Jmeter JDBC请求

时间:2018-12-24 20:33:52

标签: jmeter

我是JMeter的新手,正在尝试学习工作。

我正在对返回状态码的查询执行JMeter JDBC请求。经过一些后端处理后,状态码最初为“ 0”,它将更新为“ 3”。

我想找出使用​​WHILE控制器将状态从“ 0”转换为“ 3”所花费的时间。任何帮助表示赞赏!

1 个答案:

答案 0 :(得分:1)

  1. JMeter Variable采样器的Variable Names函数下定义任意JDBC Request名称,即myVar

    enter image description here

  2. 将您的JDBC Request采样器放在While Controller下,并使用以下条件:

    ${__groovy(!vars.get('myVar_1').equals('3') ,)}
    

    根据JDBC Request采样器文档:

      

    如果提供了“变量名”列表,那么对于Select语句返回的每一行,将使用相应列的值(如果提供了变量名)来设置变量,并且还设置行数起来

    因此,给定您的查询返回单行,其状态为${myVar_1}。上面的__groovy() function检查${myVar_1}变量值是否等于3

    enter image description here

    如您所见,JDBC Request采样器已经执行了4次,第一次尚未定义myVar_1,并且在随后的请求中,它从0递增到3。一旦达到3,则-While控制器循环中断并且测试进一步进行

  3. 为了获得所有JDBC Request采样器执行的累积时间,将整个结构放在Transaction Controller下:

    enter image description here