jmeter获取当前时间、时间运算、时间比较、时间转换

获取当前时间

方法一:函数

SSS是毫秒

在这里插入图片描述
${__time(yyyy-MM-dd HH:mm:ss.SSS,)}

方法二:beanshell

import java.text.SimpleDateFormat;
import java.util.Date;
 
Date d = new Date();
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS");
String str = df.format(d);
log.info(str);
vars.put("now_time", str);

在这里插入图片描述
时间运算

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

时间比较

方法一:compareTo方法

package com.qzcsbj;
 
public class Test {
    public static void main(String[] args) {
        String date1 = "2020-01-21";
        String date2 = "2020-01-12";
        int res = date1.compareTo(date2);  // 两个时间的格式必须一致,否则报错
        if(res > 0) {
            System.out.println("date1 > date2");
        } else if(res == 0) {
            System.out.println("date1 = date2");
        } else if(res < 0) {
            System.out.println("date1 < date2");
        }
    }
}
// date1 > date2

方法二:正则替换,然后转换为long

package com.qzcsbj;
 
public class Test {
    public static void main(String[] args) throws InterruptedException {
        // 将时间字符串转成Long类型进行比较
        String dateStr = "2020-04-25 12:00:00.898";
        // \s是指空白,包括空格、换行、tab缩进等所有的空白,而\S刚好相反,只要出现空白就匹配
        // "."是不会匹配换行的,所有出现有换行匹配的时候,人们就习惯 使用[\s\S]或者[\w\W]这样的完全通配模式
        long longDate = Long.valueOf(dateStr.replaceAll("[-\\s:\\.]",""));
        System.out.println(longDate);  // 20200425120000898
    }
}

方法三:转换为long

package com.qzcsbj;
 
import java.util.Calendar;
import java.util.Date;
 
public class Test {
    public static void main(String[] args) throws InterruptedException {
        Date time = new Date();
        Thread.sleep(1000*1);   // 休眠1秒
        Calendar calendar = Calendar.getInstance();  // 获取实例
        // System.out.println(calendar);
        calendar.setTime(time);  // 设置时间
        // System.out.println(calendar);
 
        // 时间加、减
        calendar.add(Calendar.HOUR,-1);  // 小时减1
        Date startTime = calendar.getTime();
        calendar.add(Calendar.HOUR,2);  // 小时加2
        Date endTime = calendar.getTime();
 
        System.out.println(time);  // Sun Apr 25 10:06:19 CST 2020
        System.out.println(startTime);  // Sun Apr 25 09:06:19 CST 2020
        System.out.println(endTime);  // Sun Apr 25 11:06:19 CST 2020
 
        // 时间戳
        long timestamp = time.getTime();
        long startTimestamp = startTime.getTime();
        long endTimestamp = endTime.getTime();
        // System.out.println(timestamp);  // 1587720673166
        // System.out.println(startTimestamp);  // 1587717073166
        // System.out.println(endTimestamp);  // 1587724273166
 
        // 比较大小
        System.out.println(timestamp > startTimestamp);  // true
        System.out.println(timestamp > endTimestamp);  // false
    }
}

常用时间转换

package com.qzcsbj;
 
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
 
public class Test {
    public static void main(String[] args) throws InterruptedException, ParseException {
        Date d = new Date();
        System.out.println(d);  // Fri Apr 25 17:45:14 CST 2020
        SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS");
        String str = df.format(d);
        System.out.println(str);  // 2020-04-25 17:44:54.365
        Date d2 = df.parse(str);
        System.out.println(d2);  // Fri Apr 25 17:45:14 CST 2020
 
        // 获取时间戳
        long t = d.getTime();
        System.out.println(t);  // 1587807894365
        long t2 = d2.getTime();
        System.out.println(t);  // 1587807894365
 
        String str2="2020-04-25 17:44:54.365";
        Date d3 = df.parse(str2);
        long t3 = d3.getTime();
        System.out.println(t3);  // 1587807894365
 
        System.out.println("=====================");
        // 将时间戳转换为时间
        String str3 = "1587807894365";
        SimpleDateFormat df2 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        long lt = new Long(str3);
        System.out.println(lt);  // 1587807894365
        Date d4 = new Date(lt);
        System.out.println(d4);  // Sat Apr 25 17:44:54 CST 2020
        //日期格式化
        String str4 = df2.format(d4);
        System.out.print(str4 + "\n");  // 2020-04-25 17:44:54
        Date d5 = df2.parse(str4);
        System.out.println(d5);  // Sat Apr 25 17:44:54 CST 2020
 
 
 
        System.out.println("=====================");
        // 获取当前时间的时间戳
        System.out.println(System.currentTimeMillis());  // 1587721580028
 
        // java计算程序执行时间
        long startTime2=System.currentTimeMillis();   //获取开始时间
        Thread.sleep(1000*2);   // 休眠2秒
        long endTime2=System.currentTimeMillis(); //获取结束时间
        System.out.println("程序运行时间:"+(endTime2-startTime2)+"ms");  // 程序运行时间:2000ms
    }
}

在这里插入图片描述
另外,欢迎加入软件测试技术交流群 313782132 ~进群可领取软件测试资料以及群内测试大牛解惑!
测试工程师职业发展路线图

功能测试 —— 接口测试 —— 自动化测试 —— 测试开发 —— 测试架构师

加油吧,测试人!如果你需要提升规划,那就行动吧,在路上总比在起点观望的要好。事必有法,然后有成。

资源不错就给个推荐吧~

  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值