【发布时间】:2015-02-16 21:59:28
【问题描述】:
在 ruby 中,我曾经使用记录请求的 vcr gem 测试 http 请求,因此测试不会将请求发送到真实主机。 iOS8世界里有这样的东西吗? 我要测试的请求确实需要记录,因为这些请求可能会在一段时间后过时并且会返回一些其他响应
附:如果它是一些默认的 Apple/iOS 方法/库(如 XCTest)用于一般测试,那就太好了
【问题讨论】:
-
尝试使用“NSURLProtocol”,developer.apple.com/library/mac/documentation/Cocoa/Reference/…。使用 NSURLProtocol 你可以拦截 HTTP 请求,匹配并返回缓存的响应。
-
好吧,在这种情况下,我需要实现整个框架来记录响应,而我宁愿使用一些已经编写好的库
-
这个存根响应,但问题是我必须手动完成,我希望库自己记录该请求。当我下次发出请求时,它应该使用记录的数据而不是真正连接到服务器,即使没有互联网我也应该能够运行它
-
如果你仔细阅读,你会发现自述文件中已经回答了这个问题
标签: ios unit-testing swift ios8 xctest