Loading

JMeter t-1 实现方案

JMeter t-1 实现方案

方案一:__timeShift(推荐)

适用于 JMeter 3.3+

${__timeShift(yyyy-MM-dd,,-P1D,,)}  // 减1天
${__timeShift(yyyy-MM-dd,,-PT1H,,)} // 减1小时
${__timeShift(yyyy-MM-dd,,-P1M,,)}  // 减1个月
${__timeShift(yyyy-MM-dd,,-P7D,,)}  // 减7天

参数说明:

  1. 日期格式
  2. 基准时间(空=当前时间)
  3. 偏移量(P1D=1天,PT1H=1小时)
  4. 区域设置(留空)
  5. 变量名(留空)

方案二:__groovy

适用于 JMeter 2.9+

${__groovy(new Date().minus(1).format('yyyy-MM-dd'),)}    // 减1天
${__groovy(new Date().minus(7).format('yyyy-MM-dd'),)}    // 减7天
${__groovy(new Date().minus(1).format('yyyy-MM-dd HH:mm:ss'),)}  // 带时间

方案三:JSR223 前置处理器

适用于需要复杂逻辑的场景

添加 JSR223 PreProcessor,填入:

import java.text.SimpleDateFormat

def sdf = new SimpleDateFormat("yyyy-MM-dd")
def today = new Date()
def yesterday = new Date(today.getTime() - 86400000)

vars.put("yesterday", sdf.format(yesterday))

使用时引用 ${yesterday}


方案四:__time

__time 函数本身不支持偏移,只能拿当前时间戳后手动计算:

${__jexl3(${__time(,)} - 86400000,)}  // t-1 的时间戳

需要再把时间戳转日期格式。

posted @ 2026-08-03 10:35  夷某蓁  阅读(9)  评论(0)    收藏  举报