jmeter之时间戳

初级篇·简单时间戳生成

在使用jmeter做接口测试的时候,经常会要用到日期函数,让系统自动生成一些格式化的数据,方便接口测试,jmeter自身就带有时间戳的函数

 

1、__time():获取时间戳、格式化时间

(1)${__time(yyyy-MM-dd HH:mm:ss:SSS,time)} :格式化生成时间格式 2018-10-26 11:08:23:635

(2)${__time(yyyy-MM-dd HH:mm:ss,time)} :格式化生成时间格式 2018-10-26 11:08:23

(3)${__time(,)} :默认该公式精确到 毫秒 级别, 13位数 1527822855323

(4)${__time(/1000,)} :该公式精确到 秒 级别, 10位数 1527822871

(5)${__time(yyyy-MM-dd,)} : 该公式格式化生成的常规时间为:2018-10-26

(6)${__time(yyMMdd,)} : 该公式格式化生成的时间为:181026

 

2、__timeShift(格式,日期,移位,语言环境,变量)函数,可以将时间进行移位,对当前时间增加或者减少对应的时间

(1)格式 - 将显示创建日期的格式。如果该值未被传递,则以毫秒为单位创建日期。

(2)日期 - 这是日期值。用于如果要通过添加或减去特定天数,小时或分钟来创建特定日期的情况。如果参数值未通过,则使用当前日期。

(3)移位 - 表示要从日期参数的值中添加或减去多少天,几小时或几分钟。如果该值未被传递,则不会将任何值减去或添加到日期参数的值中。

    “P1DT2H4M5S” 解析为“添加1天2小时4分钟5秒”
   
     “P-6H3M”解析为“-6小时+3分钟”
    
    “-P6H3M”解析为“-6小时-3分钟”
    
    “-P-6H + 3M”解析为“+6小时和-3分钟”

(4)、区域设置 - 设置创建日期的显示语言。不是必填项

(5)、变量 - 创建日期的值将被分配给的变量的名称。不是必填项

${__timeShift(yyyy-MM-dd,2018-10-26,P2D,,)}这种返回的时间就是2018-10-28。 注意2018-10-26必须对应格式yyyy-MM-dd,否则会返回当天日期。

 

3、__randomDate(格式,开始时间,结束时间):时间段内随机获取时间

(1)格式默认为yyyy-MM-dd

${__randomDate(yyyy-MM-dd,2018-10-01,2018-10-30)},这种函数就会自动返回20181001-20181030之间的一个日期。

 

4 获取当天时间的23:59:59,然后转换为时间戳

${__groovy(new  java.text.SimpleDateFormat('yyyy-MM-dd HH:mm:ss').parse('${__time(yyyy-MM-dd)} 23:59:59').getTime(),)} 

  解释:${__time(yyyy-MM-dd)} 23:59:59  是你输入的时间,程序会按照你输入的时间转换为13位毫秒时间戳

  你还可以结合时间移位使用:${__groovy(new  java.text.SimpleDateFormat('yyyy-MM-dd HH:mm:ss').parse('${__timeShift(yyyy-MM-dd,,-P1D,,)} 23:59:59').getTime(),)}

    其中${__timeShift(yyyy-MM-dd,,-P1D,,)}就是你的位移时间,然后转换位时间戳

 

posted @   博无止境  阅读(846)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 25岁的心里话
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示