You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

__timeShift函数计算7天前日期异常,年份未正确回退求助

JMeter __timeShift函数日期计算错误解决方法

我用__timeShift函数的写法是这样的:

${__timeShift(YYYY-MM-dd hh:mm,,-P7D,,)}

当前日期是2023年1月3日时,我想要的结果是2022-12-27 02:13,但实际输出却是2023-12-27 02:13;要是当前日期是2023年1月10日,预期结果应该是2023-01-03 02:13,也就是取当前日期的前7天,不知道怎么设置函数的格式和参数才能得到正确日期,求帮忙解决。


问题根源在日期格式符上:你用的YYYY是周年(Week Year),不是自然年的年份。周年是按每年第一个星期一开始计算的,年初的日期很容易出现年份计算错误的情况。

只要把格式里的YYYY改成小写的yyyy就行,yyyy代表自然年的年份,完全符合你的需求。修正后的函数写法:

${__timeShift(yyyy-MM-dd hh:mm,,-P7D,,)}

验证效果:

  • 2023年1月3日计算前7天,会得到2022-12-27 02:13,和预期一致
  • 2023年1月10日计算前7天,会得到2023-01-03 02:13,符合预期

额外提醒:如果需要24小时制的时间,建议把hh换成HH,避免上午下午的时间混淆,比如:

${__timeShift(yyyy-MM-dd HH:mm,,-P7D,,)}

内容的提问来源于stack exchange,提问作者pramod_pams

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.06 11:40:23