我的测试代码有以下断言:
testSubscriber.Called.Should().BeTrue("the handler was not called");
如果失败,我收到以下错误消息:
预期为True,因为未调用处理程序,但发现为False。
英语不是我的母语,但这听起来不对,我应该写什么原因?
答案 0 :(得分:2)
原因应该是你的断言应该通过的原因。在你的情况下,你似乎写了它失败的原因。
该参数将直接替换为失败消息。它将确保不重复单词“because”,因此您可以将其包含在字符串中,这可以使代码更清晰地读取。
关于这个特定案例的英语,我使用的确切语言取决于具体情况。
如果你断言调用处理程序将Called
设置为true
,你可能会说:
testSubscriber.Called.Should().BeTrue("because the handler was called");
会产生消息
预期为True,因为调用了处理程序,但发现为False。
如果您确信调用处理程序会将Called
设置为true,而您尝试断言已调用处理程序:
testSubscriber.Called.Should()
.BeTrue("we expected the handler to have been called");
会产生消息
预期为True因为我们希望调用处理程序,但发现False。