任务是比较运行采样器的时间。采样器应在10:00和18:00之间运行。我尝试使用if控制器,但它不运行脚本。
${__time(hh:mm)} > ${__timeShift(hh:mm,10:00,,,)}
我在if控制器中使用此行。如何最好地实现这种条件?
答案 0 :(得分:2)
请检查以下方法:-
def start_Time = vars.get("startTime")
log.info "start_Time>>>>>>>"+start_Time
long currentTime = ${__time(,)}
log.info "currentTime>>>>>>>"+currentTime;
long diff=currentTime.toLong()-start_Time.toLong();
log.info "diff>>>>>>>"+diff
if(diff>=2000){
start_Time = ${__time(,)};
vars.put("startTime",start_Time.toString());
}
vars.put("flag",diff.toString());
log.info "FlagValue>>>>>>>"+vars.get("flag")
但是,它在特定时间后发送请求。不,在一段时间内是随机的。您可以将随机计时器与“ If Controller”下的请求一起使用,以随机间隔发送请求。因此,经过一定时间后,运行IF Contoller,它将具有您的请求和一个随机计时器。
https://jmeter.apache.org/usermanual/component_reference.html#timers