单测中的Stub、Mock、Fake的区别和关系
Mock是整个测试的行为。
Stub是协助Mock过程中还未存在的部分。
比如接口还未Ready,后台可能尚在调试,时而返回A类型,时而返回B类型,为了客户端其他工作的可持续、不依赖性,需要先模拟网络请求,返回稳定的数据类型,这个行为叫做Stub。
比如VM需要调用Model,但是Model代码还未创建,为了能够先测试VM,那么先模拟一个Model,这个行为叫做Stub
Fake是用来创造输入参数的、Stub是拦截行为输出事先写好的内容(在Stub中)的,Mock是整个测试过程
一篇文章:http://objccn.io/issue-15-5/