在CodeArts TestPlan中调用时间戳转日期函数
函数名
$timestamp_format(String A, String B)
参数说明
- String A:要转化的时间戳,20位以内的纯数字串,也可使用内置获取当前时间戳函数$timestamp()。
- String B:可以由表1中的英文字母组成,最大长度为100。
表1 字母参数类型 字母
日期或时间元素
参数类型
示例
G
Era 标志符
文本
AD
y
年
年份
1996;96
M
年中的月份
月份
July; Jul; 07
w
年中的周数
数字
27
W
月份中的周数
数字
2
D
年中的第几天
数字
189
d
月份中的第几天
数字
10
F
月份中的第几个星期
数字
2
E
星期中的某天
文本
Tuesday; Tue
a
Am/pm 标记
文本
PM
H
一天中的小时数(0-23)
数字
0
k
一天中的小时数(1-24)
数字
24
K
am(中午)/pm(下午) 中的小时数(0-11)
数字
0
h
am(中午)/pm(下午) 中的小时数(1-12)
数字
12
m
小时中的分钟数
数字
30
s
分钟中的秒数
数字
55
S
毫秒数
数字
978
z
时区缩写名称
文本
PST;EST
Z
时区偏移量
文本
+800;-0530
- 各字母与其代表的含义一一对应,请注意大小写格式。
- H、m、s中若有一个为0位时,其它两个也必须为0位。
日期时间值中,连接符允许使用空格,“-”、“/”、“:”,也可以不使用连接符,且不能含转义连接符,比如“\n”。例如如下常用格式(包括但不限于):
- yyyy-MM-dd HH:mm:ss SSS
- yyyy-MM-dd HH:mm:ss
- yyyy-MM-dd HH:mm
- yyyy-MM-dd HH
- yyyy-MM-dd
- yyyy-MM
- yyyy
- yy
- MM-dd HH
- MM-dd
- MM
- dd
- HH:mm:ss SSS
- HH:mm:ss
- HH:mm
- HH
- mm
- mm:ss
- ss
- SSS
功能说明
实现将时间戳转化成对应格式的日期。时间戳是指从格林威治时间1970年01月01日00时00分00秒(即北京时间1970年01月01日08时00分00秒)起到指定时间的总毫秒数。
函数中的参数A支持以下几种类型:
- 符合参数说明格式的日期时间值
- 环境参数
- 局部参数
- 其它内置函数
函数中的参数B支持以下几种类型:
- 符合参数说明格式的日期时间值
- 环境参数
- 局部参数
- 其它内置函数
使用场景
接口自动化用例中支持在以下场景中使用时间戳转日期函数:
- 请求url路径
- 请求头
- 请求体
- 检查点属性
- if判断
- for循环中断条件
示例
- 请求url路径
如下图所示,请求url路径中参数“date”的值为时间戳转日期函数,函数中的参数A为内置获取当前时间戳函数“$timestamp()”,获取当前时间戳内置函数的使用方式请参考在CodeArts TestPlan中调用获取当前时间戳函数,参数B为“yyyy-MM-dd HH:mm:ss”。
- 请求头
如下图所示,请求头中参数“date”的值为时间戳转日期函数,函数中的参数A为环境参数“date”,参数B为“yyyyMMddHHmmss”。环境参数的设置方式请参考设置CodeArts TestPlan接口脚本的环境参数。
- 请求体
如下图所示,请求体中应用了时间戳转日期函数,函数中的参数A为“123456789”,参数B为“yyyyMMddHHmmssSSS”。
- 检查点属性
如下图所示,检查点属性“result”的目标值为时间戳转日期函数,函数中的参数A为内置获取当前时间戳函数“$timestamp()”,参数B为“MM/dd/yyyy HH/mm/ss”。
- if判断
如下图所示,if判断的目标值为时间戳转日期函数,函数中的参数A为内置获取当前时间戳函数“$timestamp()”,参数B为“MM/d/yyyy H/mm/ss SSS”。
- for循环中断条件
如下图所示,for循环中断条件的目标值为时间戳转日期函数,函数中的参数A为内置获取当前时间戳函数“$timestamp()”,参数B为“yyyyMMdd SSS”。