【问题标题】:Is there an equivalent way to use Fluent Assertions as replacement for Moq.Verify?是否有使用 Fluent Assertions 替代 Moq.Verify 的等效方法?
【发布时间】:2022-01-22 03:56:54
【问题描述】:

我们在 oue 测试中使用 Moq 框架和 FluentAssertions。目前我们使用两者来做我们的断言,例如我们将验证是否调用了模拟上的方法等。如果我们可以在 FluentAssertions 框架中做到这一点,那就太好了,因为我们喜欢在一个方法中执行多个断言,并且经常使用 FluentAssertions And() 将这些断言链接在一起,或者使用断言范围,以便所有断言的结果都可以一口气看完。

所以我的问题是:有什么方法可以在当前流畅的断言框架中做到这一点,所以我们可以使用And() 或断言范围来使用它吗?

或者这些验证操作是否可以用于以某种包装形式以这种方式工作?

开箱即用的支持会很棒。

【问题讨论】:

  • 请贴一些代码,因为你的问题太难理解了

标签: c# unit-testing moq fluent-assertions


【解决方案1】:

要在 AssertionScope 中包含对验证的调用,您可以执行以下操作:

Action verifyAction = () => myMock.VerifyAll();
verifyAction.Should().NotThrow();

然后可以在 AssertionScope 中使用它。就如何记录错误而言,它不是很清楚,但它可以实现在 Fluent Assertions AssertionScope 中包装对 Moq Verify 的多个调用的目的。

【讨论】:

    猜你喜欢
    • 2012-02-03
    • 2013-07-18
    • 2016-11-12
    • 2016-01-13
    • 1970-01-01
    • 1970-01-01
    • 2020-05-21
    • 1970-01-01
    • 2021-11-06
    相关资源
    最近更新 更多