这个通常是由团队对系统的理解决定, 可以针对一个类, 也可以针对多个类....与Stub不同的是, Mock期待的不是返回值, Mock期待的是动作的执行. 它是依赖项的动态包装, 它可以对哪个方法以什么样的顺序被待测试系统(SUT)调用的这个期待行为进行预编程....对于Stub 和 Mock ,可以看下面两张图例:
Moq
官网: https://github.com/moq/moq4
Moq框架可以用来创建dummy, stub 和 mock....首先在转会申请类里面添加两个球员的属性:
然后添加一个体检的接口:
这两个方法的作用是一样的, 但是调用方法略有不同....所以, 我们需要Moq, 它可以提供一个Mock(模拟)版本的IPhysicalExamination, 并把它传递到审批类的构造函数里.