我正在重写一个 C# .NET 项目,目前正在计划我将如何进行测试。
阅读完所有内容后,我将安装XUnit 框架(这是第一次——我对 MSTest 更有经验)。现在我想知道我是否应该将它与 FluentAssertions(我以前也从未使用过)结合起来,或者编写纯 XUnit 测试。
乍一看,FluentAssertions 听起来既 Nerd 又时髦,但我不确定它是否真的会引导我编写可读性最好的代码,以及它在复杂测试中的扩展性如何。
因此,我正在寻找您的经验和论据。 [何时](做 | 会)使用 FluentAssertions?我很好奇。
Fluent 主要是关于可读性和便利性。
如果您要编写多个单元测试,我建议您使用它。
我最近有一个案例,我将对象“a”和“b”映射到对象“c”上,我想通过单元测试验证映射器。
因此,我创建了一个“expectedObject”,其中包含对象“c”在映射后应包含的所有属性。
由于我没有编写比较器,也不需要比较器,因此比较对象“c”和“expectedObject”以断言它们包含相同的数据会非常麻烦。所讨论的对象包含许多属性,而这些属性又具有许多属性。
但是用 Fluent 我可以简单地写
c.Should().BeEquivalentTo(expectedObject);
这比一连串的 Assert.AreEqual()
更容易阅读,而且在这种情况下,更重要的是,编写起来也更快。