最近在工作中需要用到在脚本中循环查数据,研究了一下jmeter while循环实现功能,记录一下
1.首先设置初始化变量,cycle为循环标志,max_while_count为最大循环次数;
2.书写while表达式
${__javaScript(${cycle} && ${__jm__While控制器__idx} < ${max_while_count})}
其中__jm__While控制器__idx为jmeter自带的循环计数器
3.在后置处理器中修改循环标志
String response = prev.getResponseDataAsString(); String req=prev.getUrlAsString(); if(response.contains("\"success\":\"true\"")){ Failure=false; //设置成false 表示接口跑成功,在结果树中sample是绿色的 vars.put("cycle","false"); }else{ Failure=true; //直接判断失败 表示接口跑失败,在结果树中sample是红色的 log.info("*****************"); log.error("返回报文异常:"+response); log.error("异常请求:"+req); }
vars.put("cycle","false");
当查询到数据后,修改循环标志,结束循环。