我目前有一些TestNG自定义报告代码,可以与我一直在测试的本地MySQL数据库一起工作。由于AWS中最新MySQL版本的问题,生成的数据库是postgres,在尝试转换TestNG millis over的格式时,我遇到了格式问题,似乎无法得到一个正常工作的格式。
report.reporting.put("startDate", testResult.getStartMillis());
report.reporting.put("endDate", testResult.getEndMillis());
SimpleDateFormat sdf = new SimpleDateFormat("yyyy.MM.dd HH:mm:ss");
String startDbTime = sdf.format(report.get("startDate"));
String endDbTime = sdf.format(report.get("endDate"));
当我尝试使用一些日期格式化程序时,我收到索引错误,例如:DateTimeParseException:无法在索引4处分析文本
我使用了一些不同的选项,比如offset或instant,但都没有成功。
这是我尝试过的一些选择的集合。
SimpleDateFormat sdf = new SimpleDateFormat("yyyy.MM.dd HH:mm:ss");
String startDbTime = sdf.format(report.get("startDate"));
String endDbTime = sdf.format(report.get("endDate"));
SimpleDateFormat sdf = new SimpleDateFormat("yyyy.MM.dd HH:mm:ss");
String startRawDbTime = sdf.format(report.get("startDate"));
String endRawDbTime = sdf.format(report.get("endDate"));
DateTimeFormatter formatter = DateTimeFormatter.ISO_LOCAL_DATE_TIME;
LocalDate startParse = LocalDate.parse(startRawDbTime,formatter);
LocalDate endParse = LocalDate.parse(endRawDbTime,formatter);
Long startTimeRaw = Long.parseLong(report.get("startDate").toString());
Instant startInst = Instant.ofEpochMilli(startTimeRaw);
ZonedDateTime zoneStart = ZonedDateTime.ofInstant(startInst, ZoneOffset.UTC);
LocalDate dateStart = formatter.format(zoneStart);
是否缺少转换步骤?我觉得从millis转换成postgres可以接受的东西很简单。