Bla*_*ers 12
我是RestKit项目的首席开发人员,我建议您不要使用UISpec进行测试.RestKit使用UISpec(更准确地说,它是一个简化的高度定制版本)是开发早期的一个工件 - 我使用UISpec进行功能测试,并且对于携带如此多的库犹豫不决.这些天UISpec本质上是放弃软件,我已经转向使用Square的KIF进行UI /功能测试.
对于新项目的单元测试,我喜欢Kiwi(https://github.com/allending/Kiwi),因为它位于内置的SenTestingKit之上,并提供RSpec样式测试.来自Pivotal Labs和GHUnit(http://gabriel.github.com/gh-unit/)的Cedar(https://github.com/pivotal/cedar)也很稳健.RestKit本身可能会在不久的将来某个时候从UISpec过渡.
现在,关于如何为测试设置数据库的问题.如果你查看RestKit中的RKSpecEnvironment.h/m文件,有很多有用的单元测试方法.假设您正在使用RestKit的Core Data集成,RKSpecNewManagedObjectStore()方法将拆除Core Data环境,并通过删除持久存储来为您设置清除数据库.
RestKit自己的单元测试可以提供一些关于如何对API数据进行单元化的一些很好的参考(除了上面的测试工具问题).RKSpecResponseLoader类可用于将异步REST请求转换为可以测试的过程步骤(它充当RKObjectLoader的委托并将旋转运行循环以等待加载请求).因此,一般模式是清除数据库状态,设置您需要/期望的任何对象,然后执行API交互并断言Core Data中的结果或新状态.
| 归档时间: |
|
| 查看次数: |
705 次 |
| 最近记录: |