ユニットを実行しているときにアプリケーションホストとして使用しようとする前に、メインアプリケーションターゲットをコンパイルして製品を生成したくないXcodeプロジェクトがありますテスト。 Xcodeから、⌘ + U
で単体テストを実行しようとしています。 "/Users/***/Library/Developer/Xcode/DerivedData/Lowes-aymgdtrbrarmcidtkxoqxeafmxmj/Build/Products/Debug-iphonesimulator/[app name]"
: は Could not determine bundle identifier for [app name] TEST_HOST
Xcode 8ユニットテストエラー:TEST_HOSTのバンドル識別子を特定できません
は、このダイアログはまた、私の地元の派生データ製品ディレクトリへのパスが含まれて(実際のアプリケーション名の[アプリケーション名]を置き換えます):私はすぐに述べてダイアログを取得
ユニットテストは、TEST_HOST設定が$(BUILT_PRODUCTS_DIR)/[app name].app/[app name]
を指しているように設定されています。ユニットテストターゲットは、メインのアプリターゲットにターゲット依存関係があります。 BUNDLE_LOADER設定は$(TEST_HOST)
に設定されています。 ⌘ + B
で最初にメインのアプリケーションターゲットをコンパイルすると、正しいディレクトリ構造とアプリケーションが作成され、⌘ + U
ブートストラップが実行され、ユニットテストが正しく実行されます。私がきれいにして、もう一度やり直すとすぐに失敗します。私はこれまでにこの問題に遭遇したことはなく、アプリがSwift 3に変換された後に発生したように見えます。これは問題に関係しているかもしれません。
ここでいくつかの解答を読み、多くの提案を試みましたが、私と同じ根本的な問題はないようです。ほとんどの人にとっては、ホストアプリケーションをNoneに設定し、メインターゲットに戻って問題を解決しているようです。これは私には当てはまりません。
- Tests stop working under xcode 8 TEST_HOST error
- Could not determine bundle identifier for xxxTest TEST_HOST
私は新鮮なチェックアウト、スウィフト3にアプリやテストの目標を再変換し、また、標準クリーン/クリーンビルドフォルダを試してみた/派生データを拭きます。これらのどれも効果がないようです。
誰もがこの問題を経験して解決策を見つけましたか?
変換する前にバージョンをチェックアウトし、プロジェクトと派生データをクリーンアップし、ビルドして、再度変換し、プロジェクト&派生データをクリーンアップし、ビルドしてください。 – shallowThought
ええ、トラブルシューティングの一環としてこれらの手順をすべて実行しました。今のところ、Xcodeは最初にアプリターゲットを構築することを拒否しているようです。 –
あなたの質問をあなたの新しい発見の詳細で更新するかもしれません。私はあなたのコメントでこの問題を理解していませんでした。「Xcodeがアプリのターゲットを最初に構築することを拒否したようです。変換の前にコミットを作成しませんか? – shallowThought