🧠 图解记忆:关键边界用真实依赖,其余用可靠替身,分层获得速度与信心;点击图片可查看原图。
**原则:** 越接近真实越好,但用成本平衡。分层做法:
| 测试层级 | 依赖策略 |
|---|---|
| 单元测试 | 全替身 |
| 集成测试 | Testcontainers 起真实中间件(Redis/MySQL/Kafka) |
| 端到端 | 只对关键链路 |
区分两类: "测试被测代码"用替身,"测试系统协作"用真实。
加分项: 说出"契约测试"——用 Pact 之类的工具,服务间只验证接口契约,不用真联调,解决"两边都过、联调就挂"的问题。
常见追问: Testcontainers 的启动成本怎么控制?(共享容器、session 级复用;或按模块分组)
