在一個接口測試中,需要提交的請求中要帶時間,在看完jmeter幫忙文檔,正好總結一下
1、需求
在一個XML請求中請求數據要帶有時間,如下
<?xml version="1.0" encoding="utf-8"?><Message Version="1.0" IssueTime="201404130846007"><ID>/lte/pdetail</ID><Request><Pid>493</Pid></Request></Message>
如圖中橘色標識的
2、文檔
正好jmeter有個time函數,管方文檔如下

解釋為:
函數__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
注:jmeter屬性文件在jmeter啟動目錄jmeter.properties文件中,默認為如下:
# __time() function configuration
#
# The properties below can be used to redefine the default formats
#---------------------------------------------------------------------------
#time.YMD=yyyyMMdd
#time.HMS=HHmmss
#time.YMDHMS=yyyyMMdd-HHmmss
#time.USER1=
#time.USER2=
如果要自定義自己的格式,可以直接將time.USER1寫上自己需要的格式,然后調用時,只需要調用${__time(USER1,)}即可,不過一般直接在Format中寫格式,如:${__time(yyyy-MM-dd,)}
3、實踐
直接在http請求參數中加上time函數就可調用,如下圖中紅色圈中所示:

實際的請求就為:

參考文檔:http://jmeter.apache.org/usermanual/functions.html#__time
