使用FluentAssertions时,如何实现Assert.Pass()的测试通过意图?
关于FluentAssertions实现Assert.Pass()意图的疑问
我们执行测试后,通常会通过Assert.True(someCondition)进行断言。当无需检查条件、仅需测试完成即可时,我会用Assert.Pass()结束测试。目前我在使用FluentAssertions,一直用true.Should().BeTrue();来实现该意图,但这感觉更像取巧,不符合库的设计理念。请问是否存在其他流畅语法可实现.Pass()的意图?
更新:根据反馈,在主要使用FluentAssertions时,使用XUnit或NUnit的
.Pass()并无问题。
解答
- 直接用XUnit或者NUnit原生的
Assert.Pass()就完事儿了,完全没必要硬套FluentAssertions的语法,这既符合测试框架的设计逻辑,也不会有那种“凑数”的违和感。 - 如果非得用FluentAssertions的风格,目前确实没有专门对应
.Pass()的语法——毕竟FluentAssertions的核心是做断言验证,不是用来直接标记测试通过的。你之前用的true.Should().BeTrue();确实是个权宜之计,但真要论合理性,还是优先用测试框架原生方法更合适。
内容的提问来源于stack exchange,提问作者BillRob
相关产品推荐
相关产品推荐

