swift-Mocker Swift网络请求模拟框架
Swift 开发的网络求模拟器,用过不少,swift-Mocker算是比较轻量但功能还挺全的一个。它基于URLProtocol
,可以拦截网络求返回你想要的模拟数据,挺适合写单元测试或者调试网络逻辑的时候用。
URLProtocol 的拦截能力让你能像“假装自己是服务器”一样控制响应,比如想让某个求报 500 错误、延迟返回、给个假的 JSON,分分钟搞定,连后端都不用等,直接模拟。
使用流程也简单:在setUp()
里注册 Mocker、写几条 mock 规则,跑你的测试代码就行了。测试完了记得在tearDown()
里移除掉,不然影响别的求。
mock 规则支持的内容还蛮丰富:状态码、头信息、返回数据都能设定,而且你可以写多个规则,测试各种网络情况,比如 401、超时、空数据等都可以覆盖。
还有个挺好用的点,不依赖实际网络。你在地铁里、飞机上都能测,甚至用它写 TDD 也不成问题。效率高,而且出 bug 也容易排查,环境可控嘛。
源码和例子打包在WeTransfer-Mocker-70717a1
里头,想深挖的可以看看它怎么实现的,理解了URLProtocol
这套机制,写个自定义的 mock 器也不难。
如果你在做 iOS 网络层测试,或者还在等后端接口上线,那swift-Mocker还挺值得一试的,用好了能省不少事。
495.85KB
文件大小:
评论区