比较运行脚本的时间

时间:2019-04-26 08:51:46

标签: jmeter

任务是比较运行采样器的时间。采样器应在10:00和18:00之间运行。我尝试使用if控制器,但它不运行脚本。

${__time(hh:mm)} > ${__timeShift(hh:mm,10:00,,,)}

我在if控制器中使用此行。如何最好地实现这种条件?

1 个答案:

答案 0 :(得分:2)

请检查以下方法:-

  1. 设置用户定义的变量,如下所示:-

enter image description here 2.然后在请求下使用JSR223后处理器执行以下代码。

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")

enter image description here 3.以下是用于身份验证请求的条件。

enter image description here

但是,它在特定时间后发送请求。不,在一段时间内是随机的。您可以将随机计时器与“ If Controller”下的请求一起使用,以随机间隔发送请求。因此,经过一定时间后,运行IF Contoller,它将具有您的请求和一个随机计时器。

https://jmeter.apache.org/usermanual/component_reference.html#timers