JMeter/ timshift:使用timshift获取UTC时间而不转换为本地时间.如.$ {__timeShift



每当我从函数助手运行${__timeShift(HH:mm,,PT30M,,)}时,它都会给我CST(我的本地时区)时间

我有麻烦弄清楚如何使用timshift来评估HH:mm值而不自动将其转换为CST时间。是否有一种简单的方法可以做到这一点,或者我需要使用JSR223进程来计算UTC值和变量。把它作为一个变量?

最终目标是在HTTP采样器中使用这个值。

我已经尝试了https://www.perfmatrix.com/jmeter-timestamp/

中的各种参数组合还在JSR223进程中尝试了一些基本的时间转换。我对Java和JMeter都非常陌生,所以我还没有太大的成功。

您可以使用以下可怕的__groovy()函数来实现这一点:

${__groovy(java.time.ZonedDateTime.now(java.time.ZoneId.of("UTC")).plusMinutes(30).format(java.time.format.DateTimeFormatter.ofPattern("HH:mm")),)}

更多信息:JMeter的Groovy模板备忘单

答案是设置默认时区:

TimeZone.setDefault(TimeZone.getTimeZone('UTC'))

def theTime = ${__timeShift("HH:mm",,PT30M,,)}

最新更新