MeterSphere获取任意时间格式进行时间与时间戳互转
【摘要】
MeterSphere获取任意时间格式进行时间与时间戳互转
1.概述
在进行接口测试经常会碰到需要传入时间或时间戳参数,根据业务的需求时间和时间戳还要满足不同格式的需求。 例如传入的结束时间...
MeterSphere获取任意时间格式进行时间与时间戳互转
1.概述
在进行接口测试经常会碰到需要传入时间或时间戳参数,根据业务的需求时间和时间戳还要满足不同格式的需求。
例如传入的结束时间大于开始时间反之结束时间小于开始时间等等,这篇文章就来介绍如何获取特定格式的时间。
2.获取特定格式的时间
2.1.获取特定时间格式实例
- 1.在接口请求中添加前置脚本,选择默认的beanshell语言。
- 2.通过调用SimpleDateFormat方法,实现获取特定格式时间。
2.2.获取特定时间格式源码
import java.util.*;
import java.text.SimpleDateFormat;
public static void getFormDate() {
//时间格式大写的HH代表24小时时间,小写的hh代表12小时时间。
String val = (new SimpleDateFormat("yyyy-MM-dd-hh-mm-ss-SSS")).format(new Date());
log.info("当前日期:"+ val);
vars.put("formDate", val);
}
getFormDate();
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
3.获取特定日期的时间
获取时间参数时,因业务需要时间可能是当前时间,过去某个时间,将来某个时间,我们就来个看菜碟下菜。
3.1.获取指定日期实例
- 1.在接口请求中添加前置脚本,选择默认的beanshell语言。
- 2.通过调用Calendar类提供的方法,获取指定日期。
3.2.获取指定日期源代码
import java.util.*;
import java.text.SimpleDateFormat;
public static void getFormDate() {
//时间格式大写的HH代表24小时时间,小写的hh代表12小时时间。
String form = "yyyy-MM-dd-hh-mm-ss-SSS";
String dt = (new SimpleDateFormat(form)).format(new Date());
SimpleDateFormat sdf = new SimpleDateFormat(form);
// 获取日历对象
Calendar calendar = Calendar.getInstance();
// 当前日期赋给日历
calendar.setTime(sdf.parse(dt));
// 当前日期加一天
calendar.add(Calendar.DAY_OF_MONTH, +1);
// 输出日期
String val = sdf.format(calendar.getTime());
log.info("当前日期加一天:"+ val);
vars.put("date", val);
// 当前日期减一天
calendar.add(Calendar.DAY_OF_MONTH, -1);
// 输出日期
String val = sdf.format(calendar.getTime());
log.info("当前日期减一天:"+ val);
vars.put("date", val);
// 当前日期加一个月
calendar.add(Calendar.MONTH, +1);
// 输出日期
String val = sdf.format(calendar.getTime());
log.info("当前日期加一个月:"+ val);
vars.put("date", val);
// 当前日期减一个月
calendar.add(Calendar.MONTH, -1);
// 输出日期
String val = sdf.format(calendar.getTime());
log.info("当前日期减一个月:"+ val);
vars.put("date", val);
// 当前日期加一个小时
calendar.add(Calendar.HOUR_OF_DAY, +1);
// 输出日期
String val = sdf.format(calendar.getTime());
log.info("当前日期加一个小时:"+ val);
vars.put("date", val);
// 当前日期减一个小时
calendar.add(Calendar.HOUR_OF_DAY, -1);
// 输出日期
String val = sdf.format(calendar.getTime());
log.info("当前日期减一个小时:"+ val);
vars.put("date", val);
}
getFormDate();
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
4.时间转为时间戳
接口测试过程中传递时间或时间戳格式根据接口接收的类型决定,因此需要灵活的在时间和时间戳转换。.
4.1.时间转时间戳实例
这个实例优点是可以根据需求根据指定格式的时间转换为时间戳,满足特殊需求。
4.2.时间转时间戳源代码
import java.util.*;
import java.text.SimpleDateFormat;
public static void getFormDate() {
// 根据需求转换指定时间格式的时间戳
String form = "yyyy-MM-dd-hh-mm-ss-SSS";
String dt = (new SimpleDateFormat(form)).format(new Date());
SimpleDateFormat sdf = new SimpleDateFormat(form);
String val = String.valueOf(sdf.parse(dt).getTime()/1000);
log.info("时间转时间戳:"+ val);
vars.put("date", val);
}
getFormDate();
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
4.3.指定日期转换时间戳
import java.util.*;
import java.text.SimpleDateFormat;
public static void getName() {
String form = "yyyy-MM-dd-hh-mm-ss-SSS";
String dt = (new SimpleDateFormat(form)).format(new Date());
SimpleDateFormat sdf = new SimpleDateFormat(form);
Calendar calendar = Calendar.getInstance();
calendar.setTime(sdf.parse(dt));
//当前日期加一天转为时间戳
calendar.add(Calendar.DAY_OF_MONTH, +1);
String cl = sdf.format(calendar.getTime());
String val = String.valueOf(sdf.parse(cl).getTime()/1000);
log.info("结束日期:"+ val);
vars.put("endTime", val);
}
getName();
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
文章来源: brucelong.blog.csdn.net,作者:Bruce小鬼,版权归原作者所有,如需转载,请联系作者。
原文链接:brucelong.blog.csdn.net/article/details/115010690
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)