在NUnit中,经典模型断言和约束模型断言有什么区别?

4
我正在通过阅读文档来学习Nunit-2.6.3。我对它有一些疑问。
经典模型和约束模型断言有什么区别?
哪种模型的断言最好,为什么?
1个回答

12
主要区别在于语法。这是经典写法和现代写法的不同之处:
Assert.AreEqual("expected", someString);

并且(约束条件)

Assert.That(someString, Is.EqualTo("expected"));

经典模式存在的时间更长,有些人认为它更明确且更易于理解。

其他人认为基于约束条件的方法更接近于你向其他人解释约束条件的方式。

如果你刚开始学习,那么约束条件的断言可能是更好的选择,因为这是 NUnit 试图追求的方向。它们也更接近于 FluentAssertions。约束条件的断言还通过使用 IResolveConstraint 接口提供了更明确的扩展支持。

然而,你可能应该了解经典断言,因为不同的代码可能会使用其中任何一种,具体取决于他们最初使用的是哪一种。

尽管语法不同,但它们所做的事情非常相似,因此如果你理解了其中一组断言,将其转换回另一组断言就很简单。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接