2010-09-12 40 views
11

升級到4.1的iOS SDK後,我的單元測試束始終與下面的兩個錯誤,一個警告返回:單元測試在iOS 4.1 SDK中破解?

An internal error occurred when handling command output: -[XCBuildLogCommandInvocationSection setTestsPassedString:]: unrecognized selector sent to instance 
An internal error occurred when handling command output: -[XCBuildLogCommandInvocationSectionRecorder endmarker:]: unrecognized selector sent to instance 
Run unit tests for architecture 'i386' (GC OFF) did not finish 

儘管它報告說,所有取X X測試通過我得到這些錯誤。我讀到了舊版XCode中類似的錯誤,它在發佈後也立即發生了(關於正則表達式中的錯誤,可以通過將時區設置爲太平洋時間來緩解),但是我不能肯定地說,這是對那裏的具體迴歸。

是否有其他人有這個問題?

+0

我也有這個問題。 HTTP://計算器。com/questions/3516745/sentestcase-in-xcode-3-2-and-xcbuildlogcommandinvocationsection-errors建議更改測試目標的Base SDK,但這並不能解決我的問題。 – 2010-09-13 14:30:46

+0

遇到與iOS 4.1 SDK相同的錯誤。 – 2010-09-17 12:22:45

+0

我遇到了iOS 4.1 SDK中的相同問題。這個問題在iOS 3.2 SDK中變得更加棘手。 3.2中更多的這些內部錯誤。目前還沒有解決方案。 :-( – Shiun 2010-09-17 21:15:26

回答

10

上有蘋果開發論壇提供一個解決方法,

https://devforums.apple.com/thread/68687

這是一個日期解析問題。修復很快,它需要包含一個添加到您的測試包中的.m文件。該修復程序可用於上面或從:

http://gist.github.com/586296

+0

我在目標的Compile Sources步驟中包含了那個文件,但是我仍然得到了錯誤,顯然他們沒有, t修正它爲每個人 – 2010-09-25 16:20:01

+1

只是爲了確認,它在你的測試目標,而不是你的應用程序目標? – 2010-09-25 16:22:13

+0

是的,它包含在我的測試目標的(LogicTests)編譯源步驟。是否正確嗎? – 2010-09-25 16:38:22

1

我也遇到同樣的問題。

奇怪的是,我能得到的單元測試通過調試器中運行它們按http://www.grokkingcocoa.com/how_to_debug_iphone_unit_te.html

所以看起來有點毛病的XCode接口otest正確地完成......

我真的不想把我的時區到PST其中this post似乎表明,因爲我在英國是...

+0

我在PST中,並且遇到了這個問題,我懷疑改變時區對你有幫助 – Shiun 2010-09-17 21:16:44

2

這是Xcode 3.2.4/4.1 SDK中的一個確認錯誤。有報道稱蘋果。

升級到Xcode 3.2.5/4.2 beta SDK解決了這個問題。雖然我不知道是否可以訪問beta SDK:s,或者您是否需要成爲註冊開發者。

3

它似乎是迴歸,報告代碼的某些部分不尊重時區問題。輸出在開始之前被標記爲結束,因此變得非常困惑和窒息。

我在Google上發現的一種解決方法是更改​​目標的運行腳本階段。

變化

"${SYSTEM_DEVELOPER_DIR}/Tools/RunUnitTests" 

"${SYSTEM_DEVELOPER_DIR}/Tools/RunUnitTests" 1> /tmp/RunUnitTests.out 

它的工作輪的問題,而不是解決它,但不工作。