我们正在使用 SoapUI 来测试我们的 Web 服务。这个 Web 服务在一个可预测的模式之后生成不同的时间戳,所以我们使用一个 groovy 脚本在 SoapUI 端生成它们,并在断言中使用这些在 web 服务器端断言正确的计算。到目前为止一切都很好,它就像日期(模式 yyyy-MM-dd)和固定小时/分钟的时间戳(模式 yyyy-MM-dd'T'HH:mm':00.000')的魅力。我们使用此脚本的变体来执行此操作,有时会添加天、月、小时等:
def sdf = new java.text.SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSZ")
Calendar instance = Calendar.getInstance();
instance.setTime(new Date());
Date date= instance.getTime();
s = sdf.format(date)
return s
===
现在我遇到了以下问题:这个新项目生成精确的时间戳,精确到毫秒。问题是,我无法准确预测这一点,SoapUI 生成的日期比 Web 服务稍早(这并不奇怪,只是一个事实),因此时间戳之间存在大约 100 到 500 毫秒的差异。
我尝试在此模式中添加通配符 (*)(并启用它们)以忽略毫秒部分,因为只要第二个是正确的,它就被认为是不必要的,但我猜它们在 groovy 脚本中不起作用。有没有办法让它们工作?是否有其他方法可以检查时间戳是否正确,然后忽略毫秒?