Jmeter获取时间

一、BeanShell实现

1、获取过去和未来时间

import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;

try{
    Date date =new Date();  //获取当前时间
    SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    String nowDate = sf.format(date);
    Calendar cal = Calendar.getInstance();
    cal.setTime(sf.parse(nowDate));
    cal.add(Calendar.MINUTE,+5);  //获取后5分钟时间
    //cal.add(Calendar.DATE,+1);  //后一天
    //cal.add(Calendar.DATE,-30);  //前30天
String datetime = sf.format(cal.getTime()); vars.put("datetime",datetime); } catch(Exception e){ }

 2、获取当前月第一天

import java.text.SimpleDateFormat;
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
    //获取当前月第一天:
    Calendar c = Calendar.getInstance();   
    c.add(Calendar.MONTH, 0);
    c.set(Calendar.DAY_OF_MONTH,1);//设置为1号,当前日期既为本月第一天 
    String first = format.format(c.getTime());
    //log.info("===============first:"+first);
    vars.put("first",first);

二、函数助手__time

${__time(,)}  获取Unix时间戳

${__time(yyyy-MM-dd HH:mm:ss,)}  获取当前时间,年月日时分秒

${__time(yyyy-MM-dd,)}       获取当前时间,年月日

三、函数助手__timeShift

${__timeShift(yyyy-MM-dd HH:mm:ss,,P30D,,)}    获取30天后日期

${__timeShift(yyyy-MM-dd HH:mm:ss,,-P10D,,)}     获取10天前日期

${__timeShift(yyyy-MM-dd HH:mm:ss,,-PT30M,,)}    获取30分钟前时间

${__timeShift(yyyy-MM-dd HH:mm:ss,,PT6H30M,,)}  获取6小时30分后时间

原文地址:https://www.cnblogs.com/xiaoxitest/p/9830904.html