gpt4 book ai didi

moq - Moq 中 Verabilible() 的用途是什么?

转载 作者:行者123 更新时间:2023-12-03 04:39:04 26 4
gpt4 key购买 nike

VerABLE() 的目的是什么?

如果我验证 Mock 并将其保留,它仍然会验证 SetUp

编辑:我使用的是VerifyAll(),因此所有内容都被验证。更改为 Verify() 后,仅检查我的 .Verifying() SetUp

最佳答案

附录:正如其他答案所述,.Verifying 的目的是将 Setup 纳入一组“延迟 Verify(...) 调用”,然后可以通过 mock.Verify() 触发。

OP 的澄清清楚地表明这是目标,唯一的问题是弄清楚为什么它不起作用,但正如 @Liam 所敦促的,答案也应该真正涉及到这一点:- 据我所知,关键用例是:

  • mock.Setup()mock.Verify 之间保持 DRYness
  • 允许将验证配置与实际的 Verify 调用本身断开连接(例如,您可以在另一个辅助方法中进行设置)

...回到我的回答,它简洁有效地说“要小心,因为通常认为实现这些目标对测试的易读性和可维护性的影响超过了上述优点,而这些测试过于依赖于这些目标构造”

原文:请注意,如果可能的话,应该遵循 AAA布局,因此应该是 doing explicit mock.Verify( expression ) calls after the work has been done, rather than a mock.Setup( ... ).Verifiable() paired with a mock.Verify() or mock.VerifyAll()尽可能(来源:@kzu)。

关于moq - Moq 中 Verabilible() 的用途是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/980554/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com