如何在JMeter中使用timeShift函数生成上月第一天日期?
如何在JMeter中使用timeShift函数生成上月第一天日期?
我太懂你这闹心的问题了!之前你写的函数没生效,核心问题就是参数顺序搞错啦!JMeter的__timeShift函数参数是有固定顺序的,移位表达式得放在第三个参数位置,你之前把它塞到第四个位置了,自然不会起作用,所以一直输出当月第一天。
给你两个正确的写法,按需挑着用:
- 如果需要带时间戳和时区的完整格式:
${__timeShift(yyyy-MM-01'T'00:00:00.000'Z',, -P1M,)} - 要是只需要纯日期格式(比如
2024-04-01),用简化版就行:${__timeShift(yyyy-MM-01,, -P1M)}
简单掰扯下参数逻辑:
- 第二个参数留空,代表基于当前系统日期计算;
- 第三个参数
-P1M是关键,意思是「往前推1个月」; - 格式部分写
yyyy-MM-01,就会自动把计算后的日期锁定在当月第一天。
比如现在是2024年5月,用上面的函数就能得到2024-04-01(带时间的版本就是2024-04-01T00:00:00.000Z),完全符合你的需求~
备注:内容来源于stack exchange,提问作者Tushar Chaudhary
相关产品推荐
相关产品推荐

