jmeter时间函数格式,及时间增减

本文详细介绍如何使用预定义函数处理日期和时间,包括日期格式转换、随机日期生成及时间加减运算,适用于多种场景需求。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

注意月要大写字母,天要小些字母,可以精确到毫秒

1、${__time(yyyyMMdd HHmmss,)}

结果(年月日 时分秒):20200801 142212

2、格式:${__time(yyyy-MM-dd HH:mm:ss,)}

结果(年-月-日 时:分:秒):2020-08-01 14:25:53

3、格式:${__time(yyyy/MM/dd HH:mm:ss,)}

结果(年/月/日 时:分:秒):2020/08/01 14:26:42

4、格式:${__time(yyyyMMdd,)}

结果(年月日):20200801

5、格式:${__time(dd/MM/yyyy,)}

结果(日/月/年):01/08/2020

6、格式:${__time()}

结果:1596263595969

7、格式:随机时间内取时间

${__RandomDate(yyyy-MM-dd,2020-08-02,2020-08-30,,)}

结果:

8、格式:${__time(yyyy-MM-dd HH:mm:ss:SSS,)}

结果(当前时间年月日时分秒):

9、格式:${__time(yy-M-dd HH:mm:ss:SSS,)}

结果:

10、格式:${__time(yyyy-M-dd HH:59:59:SSS,)}

结果:固定分秒

 

二、获取系统时间,并对系统时间进行增减计算(减的话在前面加符号-)

入参:

  • 格式:创建日期的格式。如果该值未被传递,则以毫秒为单位创建日期。
  • 日期:日期值
  • 移位:从日期参数的值中添加或减去多少天,几小时或几分钟
  • 区域设置:设置创建日期的显示语言
  • 变量名

★第三行Amount of seconds/minutes/hours/days to add,实现加减日期。不使用符号时为增加,使用+ -号实现加减。
使用时间加减时,需要首字母P。
再搭配天、小时、分、秒对应的字母为 D\H\M\S

当只需要变量天时,可以直接使用 2D、-3D、+1D等,也可以P2D。

★当需要变量时分秒时,需要首字母PT。

当需要天和分秒一起使用时,需要 P天 T时分秒使用。

当前时间函数${__timeShift(,,,,)}
当前时间${__timeShift(yyyy-MM-dd HH:mm:ss:SSS,,,,)}
增加一天${__timeShift(yyyy-MM-dd HH:mm:ss:SSS,,P1d,,)}
增加两小时${__timeShift(yyyy-MM-dd HH:mm:ss:SSS,,PT2H,,)}
增加三十分钟${__timeShift(yyyy-MM-dd HH:mm:ss:SSS,,PT30m,,)}
增加四十秒${__timeShift(yyyy-MM-dd HH:mm:ss:SSS,,PT40S,,)}
增加一天两小时三十分钟四十秒${__timeShift(yyyy-MM-dd HH:mm:ss:SSS,,P1dT2H30m40s,,)}

减两天${__timeShift(yyyy-MM-dd HH:mm:ss:SSS,,-P2d,,)}
 




三、获取系统时间,并对系统时间进行增减计算

1、${__intSum(${__time(YMd)},-5,)}:当前时间减5天。

__intSum函数的

①作用:整数求和,多个数字之间用逗号分隔;

②入参:第一个整数;第二个及之后的整数;变量名

2、__timeShift

 

 

### JMeter 中 `__timeShift` 函数的使用 在 JMeter 测试脚本中,`__timeShift` 函数允许用户基于给定的时间偏移量生成新的时间戳。这非常适用于模拟不同时间段的数据或调整请求中的时间参数。 #### __timeShift 函数语法 函数的基本格式如下: ```plaintext ${__timeShift(timeFormat,shiftValue,,outputVariable)} ``` - **timeFormat**: 输出时间格式化字符串,遵循 Java SimpleDateFormat 格式[^4]。 - **shiftValue**: 表示相对于当前时间的偏移量,支持正负值。例如,“+1h”表示一小时后的时刻;“-7d”则指七天前的时间点。 - **第三个参数为空**:此位置保留作为将来扩展用途,在实际应用时应留空。 - **outputVariable**: 可选参数,用于存储计算得到的新日期时间值以便后续引用。 #### 实际案例展示 下面是一个具体的例子,说明如何利用 `${__timeShift}` 创建未来一天同一时刻的时间戳并赋值给变量 tomorrowTime: ```jmeter ${__timeShift( yyyy-MM-dd HH:mm:ss, +1d, , tomorrowTime )} ``` 这段表达式的含义是从现在起向后推算24小时,并按照 "年-月-日 小时:分钟:秒" 的模式返回结果,最后把最终获得的时间存入名为 `tomorrowTime` 的自定义变量里供其他组件调用。 对于更复杂的场景,比如想要获取昨天这个时候往前再减去半小时的具体时间,可以这样写: ```jmeter ${__timeShift( yyyyMMddHHmmss, -1d-30m, , yesterdayMinusHalfHour )} ``` 这里采用了紧凑型的日期时间格式 (yyyyMMddHHmmss),并且通过组合多个单位实现了复合偏移效果 (-1d-30m)。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值