gpt4 book ai didi

unit-testing - Mockery 是 TDD 反模式吗?

转载 作者:行者123 更新时间:2023-12-01 23:18:58 25 4
gpt4 key购买 nike

就目前而言,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引起辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visit the help center为指导。




10年前关闭。




我读了这个 answer这告诉 Mockery 是 TDD 的反模式。可是等等!我们必须模拟/ stub 所有依赖项来编写单元测试。在其他情况下,它将是一个集成测试。

最佳答案

过度使用模拟可能是一种反模式,而不是模拟本身。确实,您需要模拟/ stub 您的依赖项,但是当您的类有太多依赖项时,与编写类本身相比,正确模拟和连接所有内容可能需要更多的时间和精力。并且 mock 定义非常脆弱且容易破坏,这在某种程度上违反了 TDD 规则。

太多的依赖意味着你的类是某种 god object需要重构或者是某种本身没有任何特殊逻辑的顶级协调器(例如只有依赖调用的序列),在这种情况下,我会说实际上不需要对其进行单元测试,当它的所有组件都经过了很好的单元测试(集成测试可以很好地涵盖这一点,单元测试将在没有任何实际值(value)的情况下模拟 hell )。

关于unit-testing - Mockery 是 TDD 反模式吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7075375/

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