20

アプリ拡張ターゲット、特にキーボード拡張ターゲットで単体テストを実行する方法を知っている人はいますか?

私は何を試しましたか(単体テストターゲットで):

  • [一般] タップで、そのターゲットをコンテナー アプリではなく拡張ターゲットに設定します。
  • 「Bundle Loader」を拡張ターゲットのバイナリのパスに設定します。これは次のようになります。$(BUILT_PRODUCTS_DIR)/com.mycompany.keyboard.appex/com.mycompany.keyboard
  • 「テスト ホスト」を に設定し$(BUNDLE_LOADER)ます。
  • [Build Phases] タップで、[Target Dependencies] をコンテナー アプリと拡張機能の両方に設定します。

これらの作業が完了したら、正常にビルドできますが、常に「テストに失敗しました」というログが表示されますTest target SogouInputTests encountered an error (Test session exited(1). without checking in. If you believe this error represents a bug, please attach the log file at /tmp/TestStatus-UXfvxw.log)

Xcode 6 ベータ 3 を使用しています。

4

3 に答える 3

20

私はそのバグを Apple に報告しました。そして悲しいことに、答えは、キーボード拡張機能は現在単体テストをサポートしていないということです。答えはAppleから来ています:

  • アプリ拡張機能内で単体テストを実行することは現在サポートされていません
  • 代わりに、テストするコードをフレームワークに分解し、そこでコードをテストします
  • フレームワークを拡張機能にリンクする
于 2014-09-23T05:06:43.183 に答える