一、應用場景
接口測試中,有時候我們需要需要獲取當前系統時間,比如當前是2020年12月24日。或者需要獲取某個特定時間段的所有日期,比如當前一周內的所有日期,周一是2020年12月21日,周二是2020年12月22日...,周日是2020年12月27日。假如我們的接口測試工具使用的是Jmeter,我們需要Jmeter在調用接口發送請求的時候,能夠提取到當前所需要的時間日期。
二、解決方案
1、使用Jmeter內置的兩個時間函數來獲取和處理時間
1.1 __time函數
__time函數可以返回指定格式的當前系統時間
調用格式:${__time(Format, variableName)}
參數說明:
(1)Format:時間格式。例如寫成:y年-M月-d日,則返回:XXXX年-XX月-XX日。
(2)variableName:存放time函數返回結果值的變量名稱,可選。例如寫成:num。則${num}的值就是當前的系統時間。
1.2 __timeShift函數
和__time函數類似,區別是它可以返回按指定時間單位和時間數量偏移后的日期值。注:本函數在Jmeter3.3版本之后才有。
調用格式:${__timeShift(Format, DateToShift, valueToShift, LocaleToUseForFormat, variableName)}
參數說明:
(1)Format:時間格式。例如寫成:y年-M月-d日,則返回:XXXX年-XX月-XX日。
(2)DateToShift 這里填寫基于哪一個日期進行計算新的日期。類型為日期(時間)值,格式同Format參數匹配。如果不匹配、未提供該參數值,則默認使用當前日期。偏移是基于該日期(時間)的。參數可選
(3)valueToShift 指要偏移的秒數、分鐘數、小時數、天數。參數可選
書寫語法參考:https://docs.oracle.com/javase/8/docs/api/java/time/Duration.html#parse-java.lang.CharSequence-
(4)LocaleToUseForFormat 表示日期(時間)的語言環境,即用于格式化日期(時間)的語言. 語言代碼必須小寫。國家代碼必須大寫。分隔符必須為下劃線。比如en_EN。參數可選,如果未提供,則模式使用ApacheJMeter 的locale.
書寫語法參考: http://www.oracle.com/technetwork/java/javase/javase7locales-334809.html
(5)variableName 用于存放time函數返回結果值的變量名稱,參數可選
>>本文地址:http://www.jecan.cn/zhuanye/2021/68775.html
聲明:本站稿件版權均屬中公教育優就業所有,未經許可不得擅自轉載。
1 您的年齡
2 您的學歷
3 您更想做哪個方向的工作?