我有一个类,Foo来自第三方库,我使用NUnit检查与另一个实例的相等性,
Assert.AreEqual(foo1, foo2);
Run Code Online (Sandbox Code Playgroud)
当对象不同时,我得到预期的失败,
Expected: Foo
But was: Foo
Run Code Online (Sandbox Code Playgroud)
但错误消息不是很有帮助.我知道NUnit ToString用来显示错误信息,但我不能在这里覆盖它.
NUnit是否提供API来覆盖此行为,以便我可以提供自己的ToString实现?我在API Assert.AreEqual和Assert.ThatAPI 上看不到任何东西
您可以为任何类型添加特定格式代码,NUnit将使用它.请参阅https://github.com/nunit/docs/wiki/TestContext#addformatter
此功能已在NUnit 3.2中添加.