在单元测试中,我经常使用在 now()
或关于 now()
时返回 DateTime
的方法。有没有办法说 actual
DateTime 在 actual
DateTime 的几秒内?
最佳答案
这听起来像是个坏主意。单元测试不应该以任何方式依赖于当前的实际时间......这就是为什么在你的类的构造函数中注入(inject)一些接口(interface)(可能称为 Clock
)并将其用作源是一个好习惯当前时间。然后在您的单元测试中,您可以使用一个特殊的实现,您可以控制它返回的时间,使您的测试具有确定性。
就是说,我相信您可以通过创建新的 DateTime 轻松编写一个方法来检查
通过添加和减去所需的秒数然后进行比较。DateTime
是否在另一个 DateTime
的特定范围内
关于java - 如何测试两个 Joda-Time DateTime 对象是否几乎相等?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4809939/