我想知道是否有人找到了一个好的解决方案:
在我们的单元测试中;我们常用Assert.AreEqual()
验证我们的结果。一切都很好;直到我们开始尝试在 DateTime 属性上使用它。
尽管时间非常相似,但有时会相差几毫秒,从而导致测试失败。在我们的应用程序中;只要精确到秒;这对我们来说已经足够了。
在这种情况下,有人找到了以某种方式实现公差的好方法吗?通常我们的解决方法是将其分成 2 个单独的语句;一个检查.ToShortDateString()
,另一个检查.ToShortTimeString()
,但在我看来这看起来很草率。
Use 断言.That and Is.Equal约束而不是断言.AreEqual。以下是 Nunit 网站本身的代码示例
DateTime now = DateTime.Now;
DateTime later = now + TimeSpan.FromHours(1.0);
Assert.That(now, Is.EqualTo(now) );
Assert.That(later, Is.EqualTo(now).Within(TimeSpan.FromHours(3.0)));
Assert.That(later, Is.EqualTo(now).Within(3).Hours);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)