卢二牛

5.iOS测试总结

1. 什么是Mock

当我们在做单元测试的过程中,为了保持测试又短又快和测试的隔离性,希望尽可能少地去实例化一些具体的组件。在现在面向对象的系统中,被测试的对象很可能会依赖于几个其他的对象,这时候我们就可以使用Mock去代替实例化这些对象。简单来说,Mock就是在测试中伪造的具有预定行为的具体对象的替身对象。因为被测试对象无法分辨出具体对象和替身对象的差别,所以可以用替身对象去代替具体对象执行测试。

2. 使用Mock的好处

构造一些使用具体对象难以构造或难以出现的对象。如我们朝服务器(第三方服务器)发送请求,也许100次中只返回一次Error,而当我们要测试返回Error情况下的系统的行为是否符合预期,使用具体对象完成比较困难,这时候就需要构造MockObject。

减少一些耗时的操作,例如我们需要测试访问数据库,而访问这个数据库开销巨大的时候,我们可以构造一个“虚拟”的数据库,让这个数据库返回我们期望的特定值即可。

甚至有时候因为需要内网或者屏蔽等原因,无法连接服务器的情况,也可以使用“虚拟”一个网络连接或服务器,让它返回我们期望的数据即可。

延伸阅读

学习是年轻人改变自己的最好方式-Java培训,做最负责任的教育,学习改变命运,软件学习,再就业,大学生如何就业,帮大学生找到好工作,lphotoshop培训,电脑培训,电脑维修培训,移动软件开发培训,网站设计培训,网站建设培训学习是年轻人改变自己的最好方式