2017-05-29 39 views
1

背景
雖然工作this answer我注意到,它不是那麼瑣碎,在Xcode中正確設置Quick test framework正常。在我的情況下,它花了3-4次失敗的嘗試終於有一個工作版本。而且,我還不確定我以前的嘗試錯在哪裏。或者更重要的是爲什麼該線程中的提問者每次都可能有重複運行。然後,他花了幾次嘗試終於有一個工作。如何在Xcode 8上可靠地安裝和設置快速測試框架?

問題
我問,如果您有任何的一個可靠的方法來建立快速框架上使用Xcode的可可豆莢(或迦太基或Git的子模塊),最高運行正常工作的快速測試情況下,你願意分享。

我怎麼做的前:
這裏是我創造了我的工作Quick framework on Xcode
1.我按照XCTest article in RayWenderlich site步驟設置XCTest環境。
2.然後我加入可可豆莢按installing Quick
3.然後按照Setting up your Xcode
4.然後指示我砍死和即興的方式,所有的休息,google搜索我以後遇到的每一個問題,試試這個,直到它工作。
(其中包括添加快速框架以鏈接目標的構建階段中的二進制文件)

我不自豪地分享我的上述步驟,但現在我沒有更好的方法。我希望通過問這個問題找到更好的方法。要問的話可能太多了。

我Podfile:

target 'PlayQuick' do 
# Comment the next line if you're not using Swift and don't want to use dynamic frameworks 
use_frameworks! 

# Pods for PlayQuick 

target 'PlayQuickTests' do 
    inherit! :search_paths 
    # Pods for testing 
    pod 'Quick' 
    pod 'Nimble' 
end 

end 
+0

它應該沿着學習的榜樣,而不在Xcode中手動設置的步驟,你可以分享你Podfile嗎? –

+0

我已經使用Podfile的內容更新了我的問題。 – Wismin

+0

添加;我遇到了2個類似但又不同的問題。第一個是已知的;爲什麼這些示例會被多次調用(在這裏描述:https://stackoverflow.com/questions/44044433/why-are-the-before-and-aftereach-blocks-called-multiple-times-in-unit-testing-w )。第二個問題是Xcode偶爾無法找到框架。儘管可以通過先構建框架來解決這個問題,然後您的項目;偶爾這種方法會失敗,我不知道爲什麼。 –

回答

1

Git submodule way是實現這一目標的最簡便和最簡單的方法。

按照以下步驟從零做起:

表1.A使用Include Unit Tests檢查創建Xcode項目。

1.b.或者,您可以在現有項目上使用create unit test target

  • 打開測試導航器。
  • 單擊左下角的+按鈕,然後從菜單中選擇新的單元測試目標...:


2.關閉(1)

3 Xcode項目。創建新的Xcode工作區。文件 - >新建 - >工作區。

4.打開終端/ bash shell的/的Cmd.exe

5.創建GitHubProjectClones一個新的子目錄。

  • 例如:$ HOME /開發商/ GitHubProjectClones


6. cd到(5)中的子目錄:

  • MKDIR賣方
  • GIT中的init


7.按照步驟oneGit Submodule section

  • git的子模塊添加[email protected]:快速/ Quick.git供應商/快速
  • git的子模塊添加[email protected]om:快速/ Nimble.git賣方/敏捷
  • git的子模塊更新--init --recursive


8.後續步驟twoGit Submodule section

  • 回到Xcode中與工作區打開:
    • 確保項目導航選擇
      • 文件 - >文件添加到:
        • 選擇在步驟7中創建的快捷文件夾。
      • 文件 - >文件添加到:
        • 選擇在步驟7創建
      • 文件靈活的文件夾 - >文件添加到:
        • 在步驟1中選擇您的Xcode項目。


9.按照步驟threeGit Submodule section在你的測試目標的Link Binary with Library構建階段鏈接Quick.frameworkNimble.framework

10.你應該能夠在Quick Documentation

+0

這應該更加精簡將庫與cocoapods集成在一起比錯誤安全?我不這麼認爲,對不起。涉及太多手動操作。沒有版本管理。沒有自動項目集成... –

1

集成快速&靈動通過的CocoaPods爲我工作了,沒有任何問題(MacOS的塞拉利昂,Xcode8.3.2,iOS的10.3 SDK,雨燕3.1的箱子,1.2的CocoaPods。 1)。

一定要安裝最新的穩定cocoapods版本(gem update cocoapods)並致電pod install而不只是pod update。您也可以嘗試通過致電pod deintegrate && pod install重新整合您的吊艙。

也許在您的項目中有一個奇怪的構建設置或類似的東西。你可以用一個處女測試項目來驗證它。

如果什麼都不起作用,您應該上傳您的項目(例如GitHub),以便社區能夠找出問題所在。

+0

我已經上傳失敗的嘗試安裝使用Cocoapods快速方式在:https://github.com/Shisui-U/TryQuickCocoaPodsWay1步驟類似於Mikasa詳細步驟,除了第5-9步,其中我使用豆莢命令你上面提到。寶石更新cocoapods; pod init; vi Podfile;安裝pod,然後在Xcode中打開xcworkspace。錯誤消息是未找到快速模塊。 – Wismin

+0

謝謝酒酒。我正在休假,現在無法檢查項目。 Xcode應該找到快速框架,如果你只是建立一次(CMD + B)的pod /項目。最初的發現問題與索引器/編譯器前端解析器的奇怪行爲有關 –

+0

享受您的假期,Sven。當你回來時,你可以檢查項目。我試過產品 - >清潔(Shfit-CMD-K),然後產品 - >生成(CMD + B),我得到這個錯誤:'鏗鏘:錯誤:鏈接器命令失敗,退出代碼1(使用-v看到調用)' – Wismin