JMeter:将提取的时间戳值转换为日期格式
JMeter: Converting extracted time stamp value to date format
我必须从响应中提取时间戳值并将其作为参数传递给下一个请求。
我已经从 Regular Expression Extractor
中提取了时间戳值。
时间戳值为 1481086800000
要传递的值的格式为 (Month/Date/Year HH:mm
)- 12/07/2016 10:30
请就如何将提取的时间戳值转换为上述日期格式提出宝贵建议。
下面的代码直接把epoch timestamp
转成了AKST timezone
。不需要评论中建议的两个采样器。
添加JSR223 Sampler、selectGroovy
并添加以下代码:
import java.text.*;
//long timeStamp = Long.parseLong(vars.get("time"));
Date date = new Date(1481086800000); //replace the long value with timeStamp you captured.
DateFormat formatter = new SimpleDateFormat("MM/dd/YYYY HH:mm");
TimeZone tzInAmerica = TimeZone.getTimeZone("America/Anchorage");
formatter.setTimeZone(tzInAmerica);
String dateFormatted = formatter.format(date);
vars.put("newDate", dateFormatted); //access new value using ${newDate}, in your script.
log.info(dateFormatted);
截图参考:
我必须从响应中提取时间戳值并将其作为参数传递给下一个请求。
我已经从 Regular Expression Extractor
中提取了时间戳值。
时间戳值为 1481086800000
要传递的值的格式为 (Month/Date/Year HH:mm
)- 12/07/2016 10:30
请就如何将提取的时间戳值转换为上述日期格式提出宝贵建议。
下面的代码直接把epoch timestamp
转成了AKST timezone
。不需要评论中建议的两个采样器。
添加JSR223 Sampler、selectGroovy
并添加以下代码:
import java.text.*;
//long timeStamp = Long.parseLong(vars.get("time"));
Date date = new Date(1481086800000); //replace the long value with timeStamp you captured.
DateFormat formatter = new SimpleDateFormat("MM/dd/YYYY HH:mm");
TimeZone tzInAmerica = TimeZone.getTimeZone("America/Anchorage");
formatter.setTimeZone(tzInAmerica);
String dateFormatted = formatter.format(date);
vars.put("newDate", dateFormatted); //access new value using ${newDate}, in your script.
log.info(dateFormatted);
截图参考: