在一个接口测试中,需要提交的请求中要带时间,在看完jmeter帮忙文档,正好总结一下
1、需求
在一个http请求中请求数据要带有时间,如下:
2、实现
突然想到jmeter自带的函数助手好像是可以实现这功能的,于是乎就去网上查阅了一番:
函数__time可以通过多种格式返回当前时间
函数参数 | 描述 | 是否必需 |
格式 | 设置时间所采用的格式 | 否 |
变量名 | 待设置变量名 | 否 |
如果省略了格式字符串,那么函数会以毫秒的形式返回当前时间。其他情况下,当前时间会被转成简单日期格式。包含如下形式:
YMD = yyyyMMdd
HMS = HHmmss
YMDHMS = yyyyMMdd-HHmmss
USER1 = whatever is in the Jmeter property time.USER1
USER2 = whatever is in the Jmeter property time.USER2
用户可以通过修改JMeter属性来改变默认格式,例如,time.YMD=yyMMdd
time.YMD=yyyyMMdd
time.HMS=HHmmss
time.YMDHMS=yyyyMMdd-HHmmss
如果要自定义自己的格式,可以直接将time.USER1写上自己需要的格式,然后调用时,只需要调用${__time(USER1,)}即可,不过一般直接在Format中写格式,如:${__time(yyyy-MM-dd,)}
而要实现我需求的20180322073159这样的就用到了time.YMDHMS=yyyyMMdd-HHmmss 如下图: