JMeter时间函数



前言

       在工作中,遇到了下面这种接口情况,他需要在信息头里边上传最新的时间戳,否则订单下不成功,提示时间时间差异,一个笨办法解决,我们每次手动去信息头修改最新的时间,可以解决问题。但是更好的办法就是使用时间函数,并调用变量。

 

 
 
 
 
 
总结一下jmeter的时间函数使用:
1、__time :获取时间戳、格式化时间
  1)${__time(,)} :获取当前时间戳(当前时间的毫秒数),默认精确到毫秒级别,13位数,如:1650356704900
  2)${__time(,time_ms)} :获取当前的时间戳并存入参数 time_ms 中
  3)${__time(/1000,)} :获取当前时间的秒数,精确到秒级别,10位数,如:1650356723
  4)${__time(/1000,time_s)} :获取当前时间的秒数并存入参数 time_s 中
  5)${__time(yyyy-MM-dd,)} :获取当前日期,如:2022-04-19
  6)${__time(yyyy-MM-dd,time_date)} :获取当前日期并存入参数 time_date 中
  7)${__time(yyyy-MM-dd HH:mm:ss,)} :获取当前时间,固定格式,如:2022-04-19 16:21:30
  8)${__time(yyyyMMddHHmmss,)} :获取当前时间,固定格式,如:20220419162107
  9)${__time(YMDHMS,)} :获取当前时间,固定格式,如:20220419-161941
  10)${__time(yyyy-MM-dd HH:mm:ss:SSS,)} :获取当前时间,固定格式,如:2022-04-19 16:23:02:876
  11)${__time(yyyy-MM-dd'T'HH:mm:ss.SSS'Z',)} :获取当前时间,固定格式,如:2022-04-19T16:27:16.810Z
  12)${__intSum(${__time(yyyy)},1,)} :在当前年上+1年
  13)${__intSum(${__time(MM)},1,)} :在当前月上+1月
  14)${__intSum(${__time(dd)},1,)} :在当前日上+1日
2、__TimeShift(格式,日期,移位,语言环境,变量) :可对日期进行移位加减操作
  1)PT10.345 解析为:加 10.345 秒,如:当前时间为 2022-04-19 16:55:33:318 ,${__timeShift(yyyy-MM-dd HH:mm:ss,,PT12.345,,)} 的执行结果为 2022-04-19 16:55:43:663
  2)PT15M 解析为:加 15 分钟,如:当前时间为 2022-04-19 16:58:28 ,${__timeShift(yyyy-MM-dd HH:mm:ss,,PT15M,,)} 的执行结果为 2022-04-19 17:13:28
  3)PT10H 解析为:加 10 小时,如:当前时间为 2022-04-19 17:00:03 ,${__timeShift(yyyy-MM-dd HH:mm:ss,,PT10H,,)} 的执行结果为 2022-04-20 03:00:03
  4)P2DT3H4M 解析为:加2天3小时4分钟,如:当前时间为 2022-04-19 17:01:35 ,${__timeShift(yyyy-MM-dd HH:mm:ss,,P2DT3H4M,,)} 的执行结果为 2022-04-21 20:05:35
  5)PT-6H3M 解析为:减6小时加3分钟,如:当前时间为 2022-04-19 17:04:14 ,${__timeShift(yyyy-MM-dd HH:mm:ss,,PT-6H3M,,)} 的执行结果为 2022-04-19 11:07:14
  6)-PT6H3M 解析为:减6小时3分钟,如:当前时间为 2022-04-19 17:05:09 , ${__timeShift(yyyy-MM-dd HH:mm:ss,,-PT6H3M,,)} 的执行结果为 2022-04-19 11:02:09
3、__RandomDate :时间短哪随机取值时间
  1)${__RandomDate(yyyy-MM-dd,2020-06-02,2022-04-19,,)} 会在2020-06-02~2022-04-19之间任取一个日期并返回
 
 
       以上就是我们常用到的时间函数了。我们只需要把变量粘贴复制到我们的JMeter当中就可以了。粘贴的是变量,不是时间函数,时间函数为:Time. Time函数就是时间函数。他的格式为:年月日时分秒:yyyy/MM/dd HH:mm:ss = Y/M/D H:M:S,所以啊,正常情况下,我们只需要知道啥是时间函数,时间函数怎么用就行了,更好的话,背一条
 
使用方法:
0
 
0
 
 
 
 
 
在JMeter当中,我们还可以使用自带的工具去校验我们的函数。
0
 
0
 
0
 
 
 
     只要掌握对应格式,直接在JMeter当中去生成变量,也是一个不错的方法,人家直接把变量名,和最终的效果都给展示出来了。
time函数时间格式有如下格式:
年月日:yyMMdd = YMD,
时分秒:HHmmss = HMS,
年月日时分秒:yyyy/MM/dd HH:mm:ss = Y/M/D H:M:S
0

 



结语

亲爱的朋友:
      希望本文中描述的问题以及解决方案,可以帮助到您。当然,我们深知,问题和挑战总是层出不穷,新的情况也在不断涌现。如果读者朋友您有更好的方案,或者在实际应用中发现了文中的不足之处,请不吝分享您的宝贵建议。诚挚地邀请每一位读者加入我们的行列,共同完善这份教程。
    感谢您的阅读与支持!

Dear frends,

     We hope that the questions and solutions presented in this article can be of assistance to you. Of course, we are fully aware that problems and challenges are always emerging in an endless stream, and new situations are constantly arising. If you, our readers, have better solutions or have discovered any deficiencies in this article through practical application, please do not hesitate to share your valuable suggestions with us. We sincerely invite every reader to join us in continuously improving this tutorial.

Thank you for your reading and support!
See you,Parting is for better meeting!


 

posted @ 2024-04-23 10:50  xiaodi888  阅读(2404)  评论(0编辑  收藏  举报