Moq - .NET最流行Mock框架,简单强大,单元测试首选
Moq
Moq 是 .NET 平台下最流行和友好的 mocking 框架。它基于 Castle DynamicProxy,使用 Lambda 表达式定义期望,支持接口、虚拟类、方法、属性、事件。Moq API 简洁、文档丰富、社区活跃,是 .NET 单元测试中 Mock 依赖的事实标准。
项目简介
Moq 是 .NET 平台下最流行和友好的 mocking 框架。它基于 Castle DynamicProxy,使用 Lambda 表达式定义期望,支持接口、虚拟类、方法、属性、事件。Moq API 简洁、文档丰富、社区活跃,是 .NET 单元测试中 Mock 依赖的事实标准。
核心功能
简单易用
- Mock<T>()创建代理
- Lambda定义期望
- Setup/Verify语法
- 自动实现接口
强大功能
- 严格/宽松Mock
- 回调和返回值
- 参数匹配
- 序列和顺序验证
生态成熟
- NuGet广泛使用
- VS和Rider集成
- 与xUnit/NUnit配合
- 活跃维护
使用方法
- 通过NuGet安装Moq
- 创建Mock<T>对象
- Setup配置方法行为
- 在测试中Verify验证调用
适用场景
- 单元测试Mock依赖
- TDD开发
- 外部服务隔离测试
- 接口驱动设计
项目地址
📦 GitHub 仓库:https://github.com/moq/moq4
授权方式:免费 + 开源 (BSD)