jmeter时间函数格林尼治时间_JMeter 内置日期(时间)函数总结

本文总结了JMeter中的__time和__timeShift函数,包括它们的使用格式、参数和示例。同时介绍了__RandomDate函数,用于生成指定范围内的随机日期。
摘要由CSDN通过智能技术生成

JMeter 内置日期(时间)函数总结

by:授客 QQ:1033553122

1.测试环境

apache-jmeter-3.3

下载地址:

win7

2.__time函数

__time函数以各种格式返回当前时间

${__time(Format, variableName)}

说明:

Format  传递给SimpleDateFormat的格式。参数可选,如果不提供该参数,则默认返回1970-01-01 00:00:00到当前时间的毫秒数。如果Format匹配"/ddd" (这里ddd为小数位数),那么函数将返回前面所述的时间毫秒数/ddd后的值。例如"/1000",返回1970-01-01 00:00:00到当前时间的秒数。否则传递当前时间给SimpleDateFormat

variableName   用于存放time函数返回结果值的变量名称,参数可选

例子:

log.info("${__time()}");

log.info("${__time(,)}");

log.info("${__time(/1000,)}"); # 精确到秒

log.info("${__time(, var)}");

log.info("${var}");

log.info("${__time(yyyyMMdd, var)}");

log.info("${__time(YMD,)}");

log.info("${__time(HHmmss,)}");

log.info("${__time(HMS,)}");

log.info("${__time(yyyyMMdd-HHmmss,)}");

log.info("${__time(YMDHMS,)}");

log.info("${__time(dd/MM/yyyy,)}");

log.info("${__time(yyyy-MM-dd HH:mm:ss,)}");

log.info("${__time(yyyy-MM-dd HH:mm:ss:SSS,)}");

注意:格式区分大小写

结果:

a4c26d1e5885305701be709a3d33442f.png

391c97f0620c3992d0fa4f16db84d0b9.png

参考链接:http://jmeter.apache.org/usermanual/functions.html#__time

3.__timeShift函数

3.3版本开始才内置该函数,类似__time函数,不同之处在于它可以返回按指定时间单位和时间数量偏移后的值。

${__timeShift(Format, DateToShift, valueToShift, LocaleToUseForFormat, variableName)}

说明:

Format  同__time()函数,参数可选

DateToShift   日期(时间)值,格式同Format参数匹配,如果不匹配、未提供该参数值,则默认使用当前日期。偏移是基于该日期(时间)的。参数可选

valueToShift  指要偏移的秒数、分钟数、小时数、天数。参数可选

书写语法参考:

https://docs.oracle.com/javase/8/docs/api/java/time/Duration.html#parse-java.lang.CharSequence-

例子:

PT20.345S  被解析为 20.345 秒,意为在DateToShift 的基础上增加20.345秒

PT15M  被解析为 15分钟,意为在DateToShift 的基础上增加15分钟秒

PT10H 被解析为 10小时,意为在DateToShift 的基础上增加10小时

P2D 被解析为 2 天,意为在DateToShift 的基础上增加2天

-P6H3M 被解析为 -6 小时又-3小时,,意为在DateToShift 的基础上增加6小时3分钟

LocaleToUseForFormat 表示日期(时间)的语言环境,即用于格式化日期(时间)的语言. 语言代码必须小写。国家代码必须大写。分隔符必须为下划线。比如en_EN。参数可选,如果未提供,则模式使用ApacheJMeter 的locale.

参考资料:

variableName   用于存放time函数返回结果值的变量名称,参数可选

例子:

a4c26d1e5885305701be709a3d33442f.png

fbe9dcfe12b2178f87e8374d0ec81332.png

log.info("${__timeShift(,,,,)}");

log.info("${__timeShift(yyyy-MM-dd HH:mm:ss,,,,)}");  // 使用默认日期时间

log.info("${__timeShift(yyyy-MM-dd HH:mm:ss,2018/11/30 23:59:59,,)}"); // 使用默认日期时间

log.info("${__timeShift(yyyy-MM-dd HH:mm:ss,2018-11-30 23:59:59,,)}");

log.info("${__timeShift(dd/MM/yyyy,21/01/2018,P2D,,)}"); // 返回 23/01/2018

log.info("${__timeShift(dd MMMM yyyy,21 février 2018,P2D,fr_FR,)}");  // 返回 23 février 2018

log.info("${__timeShift(yyyyMMdd,,,,var)}"); // 存储返回值到变量var

log.info("${var}");

运行结果:

994e1569737dbd14d3da556769d18a7f.png

a4c26d1e5885305701be709a3d33442f.png

参考链接:

4.__RandomDate

函数返回给定起始日期和结束日期之间的随机日期

${__RandomDate(Format, StartDate, EndDate, LocaleToUseForFormat, variableName)}

)}

Format  同__time()函数,默认值为 yyyy-MM-dd

StartDate 起始日期,默认为now

EndDate  结束日期,参数必填

LocaleToUseForFormat同__timeShift()函数

variableName同__time()函数

注意:StartDate 和 EndDate格式必须和Format保持一致

例子:

043837ca493452292fb7bd817761b7dc.png

a4c26d1e5885305701be709a3d33442f.png

log.info("${__RandomDate(,,2019-01-01,,)}"); // 返回当前日期到2019-01-01直接的日期

log.info("${__RandomDate(yyyyMMdd,20181117,20181130,,var)}"); // 存储返回值到变量var

log.info("${var}");

log.info("${__RandomDate(dd MM yyyy,,08 07 2050,,)}"); // 自定义格式 // 返回当前日期到2050年7月8号之间的日期

运行结果:

a4c26d1e5885305701be709a3d33442f.png

2ea304adb6b2b79535539302484878e4.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值