2010-12-04 27 views
0

我正在按照this guide設置iOS應用(使用4.2 SDK)的單元測試目標。該指南稱,RunUnitTests應通過shell腳本在我的目標的最後階段得到執行:單元測試目標中的xcode RunUnitTests腳本?

設置爲測試主機的值告訴RunUnitTests腳本(在最後的構建階段執行)啓動指定的應用程序和注入你的測試包

實際上,我創建的目標確實有一個「運行腳本」步驟,但該步驟是空的。我的測試情況下建立正確,如「編譯源代碼」也包含我的測試類,但它似乎並沒有越來越跑,因爲我有一個測試方法,我認爲應該失敗:

- (void)testClick { 
    STAssertTrue(NO, @"sample test"); 
} 

,我認爲應該導致xcode產生一些噪音,但是當我構建我的目標時,我所得到的只是「構建成功」。我在目標設置中缺少什麼?我的單元測試目標的「Link Binary With Libraries」和「Run Script」步驟是否應該是空的?目標肯定是編譯我的測試用例,但我不認爲它知道鏈接或運行腳本。

在我的目標設置中,我已經將「Bundle Loader」和「Test Host」屬性設置爲我認爲正確的屬性,因爲編譯器設置不正確時,抱怨說。

+0

您使用的是哪種版本的Xcode? – 2010-12-06 11:52:30

回答

0

保羅,嘗試包括這個代碼在你空「運行腳本」的劇本打造階段:

# Run the unit tests in this test bundle. 
"${SYSTEM_DEVELOPER_DIR}/Tools/RunUnitTests" 

,並確保外殼線讀取/bin/sh。我可能有這個錯誤,因爲它在本指南中沒有提及,但這是我一直在運行我的單元測試的過程,並且它工作得很好。