五类替身
| 类型 | 作用 |
|---|---|
| Dummy | 仅填充参数,不被使用 |
| Stub | 返回预设值,不校验交互 |
| Spy | 记录调用信息供断言 |
| Mock | 预设期望并校验调用 |
| Fake | 简化可用的真实实现(如内存库) |
优先使用 Fake 与 Stub 保持用例稳定;只在验证交互协议时使用严格 Mock。
用替代对象替换真实依赖以便隔离测试:Dummy、Stub、Spy、Mock、Fake 五类各有用途;Martin Fowler 与 xUnit Patterns 均有系统论述。
| 类型 | 作用 |
|---|---|
| Dummy | 仅填充参数,不被使用 |
| Stub | 返回预设值,不校验交互 |
| Spy | 记录调用信息供断言 |
| Mock | 预设期望并校验调用 |
| Fake | 简化可用的真实实现(如内存库) |