Jmeter函数-时间函数多种用法

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Jmeter函数-时间函数多种用法相关的知识,希望对你有一定的参考价值。

参考技术A 总结一下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之间任取一个日期并返回

原文地址:https://www.cnblogs.com/panpanda/p/16166237.html

jmeter 常用函数学习

下面介绍一些笔者常用的函数及用法

一、加法函数
${__longSum(,,)} 可以计算10位以上的数字加减法。
${__intSum(,,)} 只能计算10位及以内的加减法。
二、大写转换函数
${__uppercase(abc,)}
该函数是用来转换字符串变为ABC用的,可以配合MD5等函数一起使用。
${__uppercase(${__MD5(123456,)},)}
得出的结果就是E10ADC3949BA59ABBE56E057F20F883E。
三、时间函数一些小技巧
1.${__time(/1000,timenum)} 定义一个时间后赋值给变量timenum,后续接口直接用timenum
就直接取到刚才第一次调用这个函数时的时间了。
2.${__time(yyyy-MM,nowDate)}-${__intSum(${__time(dd,nowDay)},01,nextday)}
拼接生成多少天以前的或者多少天后的日期,但是有个问题是跨月无法处理。
四、V函数(粘合函数)
函数__V可以用于执行变量名表达式,并返回执行结果。它可以被用于执行嵌套函数引用(jmeter不支持嵌套变量)。
例如,如果存在变量A1=a1、A2=a2和N=1,则:
${A1}:能正常工作。返回结果:a1。
${A${N}}:无法正常工作(嵌套变量引用)。
${__V(A${N})}:可以正常工作。A${N}变为A1,函数 __V返回结果也是:a1。
V函数还可以支持多个函数或变量的组合。
例如,变量B_1_1=b1,B_1_2=b2,以及X=1 Y=2,则:
${__V(B_${X}_${Y})}:可以正常工作。B_${X}_${Y}变成B_1_2,函数__V返回结果:b2。
一般应用场景:
1.例如正则匹配出多个变量。
然后后面的接口需要自增取每个变量的值,那可以通过定义一个计数器,然后再用V函数粘合计数器与变量名。这样就可以每次循环自增的获取每个变量的值了。除了计数器,也可以用自增函数__counter,随机数函数__random来组合。

以上是关于Jmeter函数-时间函数多种用法的主要内容,如果未能解决你的问题,请参考以下文章

Jmeter几种常用函数用法 __setProperty,__P,vars,props

Jmeter_选项_函数助手_RandomString的用法

jmeter 常用函数学习

javascript的this多种场景用法

jmeter beanshell里面写了函数怎么调用

如何在JMeter中编写一个包含或可用于使用毫秒时间函数生成随机函数的函数