2012-07-07 66 views
0

我想運行使用RestKit加載對象(到CoreData中)的單元測試。但我不希望我的單元測試(或RestKit)實際連接到服務器,因爲服務器可能無法訪問。在使用RestKit的單元測試中僞造http連接

如何告訴RestKit使用fixture(預定義的json文件)作爲響應,而不是連接到遠程服務器?我知道RKFixture和Unit testing with RestKit但這並不包括我的問題。

回答

0

this線程中給出的最後一個答案可能對您的具體問題有用。順便說一句,你看起來是GHUnit?這是一個非常好的單元測試框架,允許進行異步單元測試。無論如何,通常應該測試服務器故障。

如果你的單元測試的目的是檢驗映射功能,那麼你有這種替代也:

//Create object mapper 
RKObjectMapper* mapper = [RKObjectMapper mapperWithObject: obj mappingProvider:mappingProvider]; 
mapper.context = RKObjectMappingProviderContextObjectsByKeyPath; 

//Perform mapping 
RKObjectMappingResult* mappingResult = [mapper performMapping]; 

NSArray *results = [mappingResult asCollection] 

這基本上是內部RKObjectLoader會發生什麼。這裏obj是你可以使用測試數據創建的一些解析的JSON對象(NSDictionary或NSArray)。

+0

謝謝,它看起來與我的問題有關,或者至少給我一些提示我應該看什麼方向。我會及時向大家發佈。 – jpalten 2012-07-09 04:38:28

相關問題