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天
参数说明:
- 日期格式
- 基准时间(空=当前时间)
- 偏移量(P1D=1天,PT1H=1小时)
- 区域设置(留空)
- 变量名(留空)
方案二:__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 的时间戳
需要再把时间戳转日期格式。

浙公网安备 33010602011771号