[英]Unit Testing with Kiwi, Core Data and Magical Record
我在使用'假'商店進行單元測試時遇到了問題。 我已經通過將其框架文件夾添加到我的項目並使用Kiwi測試替換Xcode的默認測試用例來安裝Kiwi。 一切都運行良好。
由於我使用的是Core Data,我需要創建一個“假”存儲,這樣我才能使用真正的數據庫。 我使用http://www.cimgf.com/2012/05/15/unit-testing-with-core-data/作為我的基本指南。
但是,由於Xcode的默認測試實現在啟動應用程序后運行測試,因此在運行任何測試之前,我的'[MagicalRecord setupCoreDataStackWithStoreNamed:@“Store.sqlite”]'仍會在App Delegate中觸發。
當測試嘗試使用'[MagicalRecord setupCoreDataStackWithInMemoryStore]'時,這個sqlite存儲被設置,因此內存存儲不會被設置(AFAIK),因為前面提到的設置堆棧方法首先檢查是否堆棧已經存在,只是返回而不執行任何操作,所以我最終仍然使用sqlite數據庫。
據我所知,這給我留下了以下選擇:
這些似乎都不是一個特別好的解決方案,所以我希望有人能夠看到一個我愚蠢地忽略的更好的解決方案。
您的測試不應該啟動應用程序委托。 嘗試設置測試,以便只有測試設置內存核心數據存儲,如您引用的文章中所述。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.