我继承了一些单元测试代码,它给了我一个弃用警告,因为它使用“Assertion.AssertEquals”:
警告 CS0618:“NUnit.Framework.Assertion”已过时:“改用 Assert 类”
但是,我在 Assert 类中看不到应该使用的明显方法?
AssertEquals 接受两个对象和一条消息,如果出现故障,可使用该消息报告错误。例如
Assertion.AssertEquals(
"Enqueuing first item should set count to 1",
1, pq.Count);
Assert 类的等效方法是什么?
最佳答案
Jon Skeet 给出的答案指向所谓的“经典”模型,而 John Gietzen's 答案指向“基于约束”的模型。两者都是正确的,并且都提供了在失败的情况下传递消息的可能性。
所以让我总结一下:
“经典”型号
Assert.AreEqual(1, pq.Count,
"Enqueuing first item should set count to 1");
“基于约束”的模型
Assert.That(
pq.Count,
Is.EqualTo(1),
"Enqueuing first item should set count to 1");
我更喜欢后者,因为它读起来更像是一个句子。
关于.net - Assertion.AssertEquals 中的 "upgrade path"是什么?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1432776/