3

「Objective-C を単体テストする最良の方法」に関する質問を読み、指示に従いましたが、何をしても単体テストが実行されません。実際にはプログラム全体が実行されず、次のメッセージが表示されます。

dyld: ライブラリがロードされていません: @rpath/SenTestingKit.framework/Versions/A/SenTestingKit から参照されています /Users/garethlewis/work/objc/UnitTesting/build/Debug/UnitTesting 理由: 画像が見つかりません

DYLD_FALLBACK_FRAMEWORK_PATH 変数を設定し、XCInjectBundle と DYLD_INSERT_LIBRARIES も設定し、変数 -SenTest All を追加しました。

単体テストに失敗する Xcode 3.1 だけをインストールすることはできません。

Xcode 3.1 で単体テストを機能させることができた人は、何をする必要があるかについて詳細を説明できますか。私がやろうとしていることで、それはとても役に立ちます。

4

1 に答える 1

4

テストを実行するためにこのようなことをする必要はありません。

アプリケーションのテストを作成する場合は、単体テストバンドルターゲットのテストホストバンドルローダーのビルド設定を設定するだけで、ビルドの一部として実行されます。フレームワークのテストを作成している場合は、それを行う必要はありません。テストバンドルがフレームワークにリンクしていることを確認してください。

テストを実行するだけでなく、実際にテストのデバッグについて話していると思います。その場合、次の情報を提供することが重要です。

  • デバッグしようとしているテストの種類(アプリケーションまたはフレームワーク)
  • どの環境変数を設定し、どの値に設定するか
  • 設定する引数(-SenTest All環境変数ではなく引数にする必要があります)
  • 特定の障害だけでなく、デバッグコンソールに表示される完全なエラーは何ですか

それは何が起こっているのかを診断するのに役立ちます。

一見すると、タイプミスがあるように見えます。これは、解決できない場合にバイナリを検索DYLD_FALLBACK_FRAMEWORK_PATHする場所を決定するためです。それが何に設定されているかを知ることはおそらく助けになるでしょう。dyldSenTestingKit.framework@rpath

(PS-Xcodeです。)

于 2008-09-03T14:26:10.223 に答える