带有While控制器的Jmeter JDBC请求

带有While控制器的Jmeter JDBC请求,jmeter,Jmeter,我是JMeter的新手,在工作中努力学习 我正在对返回状态代码的查询执行JMeterJDBC请求。状态代码最初为“0”,经过某个后端进程后,它将更新为“3” 我想了解使用WHILE Controller将状态从“0”移动到“3”所用的时间。感谢您的帮助 在采样器的Variable Names函数下定义任意名称,即myVar 将JDBC请求采样器置于并使用以下条件: ${__groovy(!vars.get('myVar_1').equals('3') ,)} 根据JDBC请求采样器文档: 如

我是JMeter的新手,在工作中努力学习

我正在对返回状态代码的查询执行JMeterJDBC请求。状态代码最初为“0”,经过某个后端进程后,它将更新为“3”

我想了解使用WHILE Controller将状态从“0”移动到“3”所用的时间。感谢您的帮助

  • 在采样器的
    Variable Names
    函数下定义任意名称,即
    myVar

  • 将JDBC请求采样器置于并使用以下条件:

    ${__groovy(!vars.get('myVar_1').equals('3') ,)}
    
    根据JDBC请求采样器文档:

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

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

    如您所见,JDBC请求采样器已经执行了4次,第一次
    myVar_1
    尚未定义,在后续请求中,它从0增加到3。当它达到3时,While控制器循环中断,测试继续进行

  • 为了获得所有JDBC请求采样器执行的累积时间,将整个构造置于事务控制器下:

  • 在采样器的
    Variable Names
    函数下定义任意名称,即
    myVar

  • 将JDBC请求采样器置于并使用以下条件:

    ${__groovy(!vars.get('myVar_1').equals('3') ,)}
    
    根据JDBC请求采样器文档:

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

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

    如您所见,JDBC请求采样器已经执行了4次,第一次
    myVar_1
    尚未定义,在后续请求中,它从0增加到3。当它达到3时,While控制器循环中断,测试继续进行

  • 为了获得所有JDBC请求采样器执行的累积时间,将整个构造置于事务控制器下:


  • 谢谢@Dmitri。。让我试试这个方法并确认!!谢谢@Dmitri。。我接受了答案。。您的解决方案细节非常棒!!谢谢@Dmitri。。让我试试这个方法并确认!!谢谢@Dmitri。。我接受了答案。。您的解决方案细节非常棒!!