我的應用程式使用 CoreData。其中一個物體是
final class ViewItem: NSManagedObject {
// …
}
在單元測驗期間,我正在嘗試執行以下獲取請求:
let viewItemFetchRequest = NSFetchRequest<ViewItem>(entityName: "ViewItem")
作為
viewContext.performAndWait {
do {
let fetchedViewItems = try viewContext.fetch(viewItemsFetchRequest)
let viewItems = Set(fetchedViewItems)
// …
}
盡管代碼在正常操作期間正確執行,但在單元測驗期間它會崩潰。
當我在try指令后面設定斷點時,達到了這個斷點,即取指不會拋出。
但是,當我想訪問時,我得到一個致命錯誤fetchedViewItems,無論是 bySet(fetchedViewItems)還是 with
(lldb) po fetchedViewItems
Fatal error: NSArray element failed to match the Swift Array Element type
Expected ViewItem but found ViewItem
2022-06-07 10:31:30.245019 0200 ShopEasy[42069:1864673] Fatal error: NSArray element failed to match the Swift Array Element type
Expected ViewItem but found ViewItem
1 value
這是堆疊幀的相關部分:

可能是什么原因,我該如何解決這個問題?
PS:我發現了一些與這個錯誤相關的帖子,
該代碼應該只存在于您的應用程式目標中,并且您應該使用它@testable import ShopEasy來訪問您的單元測驗中的應用程式代碼。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/488719.html
