2015-04-01 37 views
13

當我添加一個測試目標需要一個宿主應用程序以運行Xcode添加與我添加的應用程序無關的目標。Xcode測試目標與主機應用程序強制錯誤的目標進入方案的構建部分

我有兩個方案(內部&生產)。我想在我們的內部應用程序上運行測試。當我將內部應用程序添加爲主機時,我最終會添加生成目標,並且無法刪除它。如果我刪除主機應用程序,這將消失,但測試也失敗。

有沒有人知道我要去哪裏錯了?

+0

在Xcode 7.3和Xcode 8 beta 6中發生了這種情況。有時它是我的項目中的另一個目標被添加,有時它是來自同一工作空間中不同項目的目標。如果您嘗試從測試方案中刪除惡意目標,Xcode會崩潰。當禁用目標的「測試」複選框時,Xcode說:「目標對於此方案的測試操作中的一個或多個測試是必需的。關閉目標也將禁用這些測試。」,則測試操作灰顯。以下解決方案不起作用啊哈! – funkybro 2016-09-06 12:28:17

+0

啊!解決方案在這裏! http://stackoverflow.com/a/26360956/64505 – funkybro 2016-09-06 13:50:25

+0

[構建目標隨機添加到Xcode方案]可能的重複(http://stackoverflow.com/questions/24169392/build-target-randomly-added-to-xcode -scheme) – funkybro 2016-09-06 13:50:38

回答

12

我們有同樣的問題,我們通過以下步驟修復這些問題:

  1. 在您的測試目標

    ,轉到標籤「常規」,並設置託管應用程序爲「無」,然後去「構建階段「,並移除對前託管目標的目標依賴。

  2. (不知道這一步是否有必要)轉到'Window' - >'Projects',從宿主目標中移除派生數據並關閉Xcode。再次打開Xcode,打開你的項目/工作區。

  3. 編輯您的託管目標的方案,在左側選擇「Build」並取消選中「Find Implicit Dependencies」 - 我相信這個函數有點bug。

  4. 在您的測試目標中,轉到「常規」選項卡並將託管應用程序設置回其先前的值,然後重新檢查目標錯誤。

+0

請記住,在步驟3之後,如果您使用的是cocoapods,請確保pods目標位於頂部,構建順序在此處非常重要。否則,您的項目可能最終無法檢測到pod頭文件。 – 2016-01-18 16:00:17

+0

你是什麼意思?你能附上截圖嗎?我的xcode 8之後的應用程序無法在模擬器上運行 - 「運行」被禁用 – wtorsi 2016-10-04 18:28:06

相關問題