什么是Mock
当对代码进行测试的时候, 我们经常需要用到一些模拟(mock)技术....绿色的是需要被测试的类, 黄色是Mock的依赖项
Mock技术带来的优点
使用Mock技术, 可以有如下的优点:
提高测试运行速度, 例如可以模拟DB, Web Service等比较慢的服务, 以及算法等...单元测试通常具有以下特点:
低级别
高聚焦
执行速度快
容易测试所有执行路径上的代码
术语
Test Double (我认为可以翻译为测试替身), 是所有非真实依赖项的总称....与Stub不同的是, Mock期待的不是返回值, Mock期待的是动作的执行. 它是依赖项的动态包装, 它可以对哪个方法以什么样的顺序被待测试系统(SUT)调用的这个期待行为进行预编程....Moq使用一套API来创建stub和mock对象.