2016-10-03 77 views
5

我突然跑入誤差在Xcode 8在Xcode 8運行單元測試會導致錯誤

dyld: could not load inserted library 
'__PLATFORMS__/iPhoneOS.platform/Developer/Library/PrivateFrameworks/IDEBundleInjection.framework/IDEBundleInjection' 
because image not found 
測試我的iOS應用程序10時,「因爲沒有找到圖片無法加載插入庫‘.../IDEBundleInjection’」

應用程序的測試運行成功。然後,我刪除了與項目一起創建的骨架UI Test Case類,因此可能導致了問題(以某種方式)。我已經重新創建了這個課程,但問題依然存在。

錯誤信息指出了什麼,以及如何解決問題,即再次成功運行應用程序的單元測試。

UPDATE必須有另一個根情況下,如果我在Xcode中創建另一個(空)單視圖應用程序項目並運行其單元測試,則會發生相同的錯誤。

該錯誤僅在設備上運行單元測試時發生,而不是在模擬器上運行。

UPDATEThis Apple對類似報告的迴應表明錯誤與代碼簽名有關。應用程序本身在同一臺設備上運行良好,那麼在我的情況下怎麼會出現代碼簽名問題?

回答

2

嘗試這些一個接一個:

  1. 嘗試創建一個新的單元測試的目標,在將所有內容複製,並刪除舊的。

  2. 在常規標籤面板中,不要將團隊留在「無」。選擇你的團隊。並從設置中選擇正確的代碼簽名標識。它被設置爲非默認值 - 更改爲「IOS開發人員」的調試設置條目。

  3. 從診斷中禁用「啓用警衛Malloc」以在設備中運行應用程序。

  4. 這可能是因爲Xcode安裝了錯誤的DeveloperImage。 (A)將所有文件夾從「/Applications/Xcode8.app/Contents/Developer/Platforms/」中移出,如果您打開「設置」 - >「開發人員」,則會看到「啓用UIAutomation」和其他文件丟失。 iPhoneOS.platform/DeviceSupport」除 「10.0(12A4297e)」 到安全的地方 (B)重啓手機 (C)將手機連接到的Xcode 8 (d)在DeviceSupport

    恢復文件夾

    這是唯一的事情即使在ios10上重新閃爍也沒有幫助

  5. 這是舊的,但它可能會幫助你:在目標的常規選項卡中,有一個Emb edded Binaries字段。當您添加框架時,崩潰已解決。

Apple開發者論壇上的參考https://devforums.apple.com/message/991384#991384

祝你好運!

0

Xcode測試基礎架構中有一個重新啓動機制,用於檢測測試期間的崩潰並嘗試重新開始測試以完成任何剩餘的測試。在測試崩潰後,如何設置DYLD_INSERT_LIBRARIES可能存在問題 - 請在https://bugreport.apple.com處提交報告,並在可能的情況下附加您的項目。

相關問題