Mock对象
Mock 对象(模拟对象) 是在单元测试中用于模拟真实依赖对象行为的一种测试技术。
在编写单元测试时,一个类往往依赖其他组件(如数据库、网络请求、外部接口等)。
这些外部依赖难以控制、耗时、或在测试阶段尚未实现。
这时我们就用 Mock 对象来替代真实依赖,用虚拟对象“假装”执行并返回期望结果。
为何使用Mock对象
- 依赖未实现(接口、模块还没写好)——使用 Mock 模拟接口返回
- 调用外部服务成本高(如数据库、API)——用 Mock 模拟返回值而不真实连接
- 测试目标类与外部系统强耦合——用 Mock 隔离依赖,专注测试目标逻辑
- 难以触发某些异常场景——Mock 可轻松模拟错误返回、异常抛出
目的:让单元测试只测试目标类逻辑,不依赖外部环境。
Mock框架常用工具
Mockito:简单易用、支持链式调用、广泛兼容 JUnit。常用Mockito+JUnit5.
EasyMock
PowerMock:可 Mock 静态方法、final 类、私有方法(配合 Mockito 使用)
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 JasmineRain's blog!
评论
