4

そのため、Xcode 3.1 / Leopard で合格する単体テストがいくつかあります。これらは iPhone アプリ プロジェクトで SenTestingKit を使用し、別の「テスト」ターゲットでビルド/実行されます。Snow Leopard で Xcode 3.2 にアップグレードしたところ、テストが実行されているように見えます (Console.app でログを取得し、それらが通過するのを確認します) が、Xcode ビーチボールは実行後に強制終了する必要があります。Console.app は Xcode から次のエラーを表示します。これは、Test ターゲットにテスト ケースが含まれていない場合でも表示されます。

Xcode[1734] -[XCBuildLogCommandInvocationSection setTestsPassedString:]:
                unrecognized selector sent to instance 0x20104db60

Xcode[1734] -runOperationInBackground raised an exception: 
                 -[XCBuildLogCommandInvocationSection setTestsPassedString:]:
                 unrecognized selector sent to instance 0x20104db60

私は無駄に掃除して再構築しましたが、検索してもこのトピックに関するものは何も見つからないようです (ただし、1 人が同じ問題を抱えているようです)。

更新:これをバグ #7214051 で Apple にバグとして報告しました。

4

6 に答える 6

7

これについては、バグレポート 7210948 も提出しました。Apple からの応答はまだなく、がっかりしています。

--

更新しました:

Apple Developer フォーラムのユーザーが回避策を投稿しました -

私たちは最近、この問題の根本原因を発見しました。

影響を受ける人は、次の方法で回避できます (準備ができていることを願っています)...

...ビルド マシンのタイム ゾーンを中央夏時間から変更する。(6 週間以上で元に戻すことができます。山岳標準時間の人々は影響を受けます。)

いいえ、真剣に。試してみる。

メッセージの編集者: cde、午​​後 3 時 34 分

于 2009-09-18T22:11:11.070 に答える
2

腐敗のように聞こえます。Xcodeのインストールが悪いか、SnowLeopardをインストールしたときに何かが問題になっている可能性があります。

あるいは、あなたのプロジェクトはどういうわけか馬鹿にされているのかもしれません。

別のSnowLeopardマシンにアクセスできる場合は、そこでテストしてください。それでもクラッシュする場合は、http://bugreport.apple.com/からバグを報告してください。

于 2009-09-02T02:58:24.040 に答える
1

私も同じことを経験しています。mu oldプロジェクト(leopardとXcode 3.1で開発された)の実行に失敗した後、Xcode 3.2で新しいプロジェクトを作成して、単体テスト用の新しいターゲットを追加し、新しいファイルとダミーケースを追加しましたが、Xcodeがハングしました... 。他のオプションはありません、私はそれを強制的に終了しなければなりませんでした。

于 2009-09-03T05:31:49.627 に答える
1

このリンクごとhttp://www.artin.org/geekblog/2009/09/xcode-snow-leopard-logical-unit-tests-hanging/

タイムゾーンを PST に変更すると、これが解決します。

興味深いことに、Macbook Pro ではこの問題が発生しますが、Mac Pro では発生しません。

于 2010-02-03T16:06:41.387 に答える
1

注意すべきもう 1 つの問題 (おそらく OP の問題ではありません) は、単体テスト バンドルがテスト リグ (アプリ) でホストされていて、アプリケーションの初期化に問題がある場合、テストがハングすることです。

これには rdar があります: rdar://7333645 は、NSApplicationMain を初期化しないことを示唆しています。

これの診断は、ビルドを行うことです。ハングする場合は、ビルドを停止します。

アプリを手動で実行してみてください (Cmd-Option-R または Cmd-Option-Y)。アプリが起動しない場合は、コンソールを確認してください。

于 2010-02-25T04:01:44.457 に答える
0

Apple は回避策ファイルとデモ テスト プロジェクトをここに投稿しました: https://developer.apple.com/library/ios/#samplecode/iPhoneUnitTests/Introduction/Intro.html

Xcode324iOS41TestSuiteWorkaround.m をテスト ターゲットに追加するだけで、すべてが魔法のように機能します :)

于 2010-11-21T13:19:55.750 に答える