【发布时间】:2018-12-25 15:56:22
【问题描述】:
我是 JMeter 的新手,正在努力学习我的工作。
我正在为返回状态代码的查询执行 JMeter JDBC 请求。状态码最初为“0”,经过一些后端处理后将更新为“3”。
我想了解使用 WHILE 控制器将状态从“0”移动到“3”所需的时间。任何帮助表示赞赏!
【问题讨论】:
标签: jmeter
我是 JMeter 的新手,正在努力学习我的工作。
我正在为返回状态代码的查询执行 JMeter JDBC 请求。状态码最初为“0”,经过一些后端处理后将更新为“3”。
我想了解使用 WHILE 控制器将状态从“0”移动到“3”所需的时间。任何帮助表示赞赏!
【问题讨论】:
标签: jmeter
在JDBC Request采样器的Variable Names函数下定义一个任意的JMeter Variable名称,即myVar
将您的 JDBC 请求采样器放在 While Controller 下并使用以下条件:
${__groovy(!vars.get('myVar_1').equals('3') ,)}
根据 JDBC Request sampler 文档:
如果提供了变量名列表,那么对于 Select 语句返回的每一行,变量都设置为对应列的值(如果提供了变量名),并且还设置了行数向上。
因此,如果您的查询返回一个状态为${myVar_1} 的行。以上__groovy() function检查${myVar_1}变量值是否等于3
如您所见,JDBC 请求采样器已执行 4 次,第一次 myVar_1 尚未定义,在后续请求中它从 0 增加到 3。一旦达到 3 - While 控制器循环中断并测试更进一步
为了获取所有 JDBC Request 采样器执行的累积时间,将整个构造置于 Transaction Controller 之下:
【讨论】: