7.2.1 Mock地狱:验证实现而非行为


文档摘要

7.2.1 Mock地狱:验证实现而非行为 你有没有在深夜调试一个测试失败的单元测试时,盯着屏幕上的 发呆过? 你有没有写过这样一段测试代码:先 mock 一个 ,再 mock 一个 ,再 mock 一个 ,最后在 里逐行检查每个 mock 被调用了几次、参数是否完全匹配、甚至调用顺序是否严格符合你“脑内编排”的执行路径? 你有没有在重构时——仅仅把 拆成 ——就导致 17 个测试全部红掉,而业务逻辑本身毫发无损? 这不是测试在保护你。 这是测试在绑架你。 这,就是 Mock 地狱(Mock Hell) 的典型切片:你不是在验证系统 做了什么(behavior),而是在审计它 怎么做的(implementation)。你在用测试给实现细节上锁,而不是为行为契约立约。


发布者: 作者: 转发
评论区 (0)
U