如何让JMeter时间函数在JMS Publisher采样器每次执行仅调用一次并复用值
解决JMS Publisher采样器中时间值复用问题
- 给目标JMS Publisher采样器添加JSR223前置处理器:右键采样器 → 前置处理器 → JSR223 Preprocessor
- 在前置处理器的脚本编辑框里写入Groovy代码生成统一时间变量,两种写法任选其一:
写法一(用Groovy原生日期处理,性能更优):
写法二(直接调用JMeter的__time函数):import java.text.SimpleDateFormat import java.util.Date def dateFormat = new SimpleDateFormat("yyyyMMddHHmmssSSS") def unifiedTimestamp = dateFormat.format(new Date()) vars.put("UNIFIED_TIMESTAMP", unifiedTimestamp)def unifiedTimestamp = __time(yyyyMMddHHmmssSSS,) vars.put("UNIFIED_TIMESTAMP", unifiedTimestamp) - 在JMS Publisher采样器的JMS属性区和消息文本体中,都用
${UNIFIED_TIMESTAMP}代替原来的${__time(yyyyMMddHHmmssSSS)}
这样每次采样器执行时,前置处理器会先生成一次时间值并存入变量,两处引用的都是同一个变量值,就不会出现差异了。
内容的提问来源于stack exchange,提问作者JustNatural
相关产品推荐
相关产品推荐

