2022 年 10 月 18 日に開催される Firebase Summit に、直接会場で、またはオンラインでご参加ください。Firebase を使用してアプリ開発を加速させ、自信を持ってアプリをリリースし、簡単にスケールする方法をご紹介します。 今すぐ登録

XCTestを実行する

このガイドでは、Firebase Test Lab でのテスト用に XCTest を準備する方法について説明します。

ステップ 1 : プロジェクトの派生データの場所を構成する

Xcode は、ビルドしたテストを含む、コンパイル済みの iOS アーティファクトを Derived Data ディレクトリに配置します。必要に応じて、そのディレクトリの既定の場所をそのまま使用することもできますが、特に Test Lab で頻繁にテストを実行する場合は、ファイルにアクセスしやすい場所を選択すると便利です。

  1. Xcode でプロジェクトを開きます。
  2. macOS メニュー バーで、[ファイル] > [プロジェクト設定...]を選択します。
  3. Derived DataドロップダウンをDefault LocationからCustom Locationに変更します。
  4. ドロップダウンの下のフィールドで、Xcode がテストを出力する場所を選択します。

ステップ 2 : 一般的なテスト ファイルを作成する

Test Lab は、 XCTestフレームワークを使用して単体テストと UI テストを実行します。 Test Lab デバイスでアプリの XCTests を実行するには、汎用 iOS デバイスでテストするためにビルドします。

  1. Xcode ワークスペース ウィンドウの上部にあるデバイス ドロップダウンから、[Generic iOS Device] を選択します。
  2. macOS メニュー バーで、[製品] > [ビルド対象] > [テスト] を選択します。

ステップ 3 : アップロード用にアプリをパッケージ化する

最後に、ビルドしたテスト ファイルを.zipファイルに圧縮して、Test Lab にアップロードするテストをビルドおよびパッケージ化します。

  1. XCTest をビルドするには、ターミナルで次のコマンドを使用します。

    事業

    xcodebuild -project PATH/TO/YOUR_WORKSPACE.xcodeproj \
    -scheme YOUR_SCHEME \
    -derivedDataPath FOLDER_WITH_TEST_OUTPUT \
    -sdk iphoneos build-for-testing

    ワークスペース

    xcodebuild -workspace PATH/TO/YOUR_WORKSPACE.xcworkspace \
    -scheme YOUR_SCHEME \
    -derivedDataPath FOLDER_WITH_TEST_OUTPUT \
    -sdk iphoneos build-for-testing
  2. テストが正常にビルドされたら、テスト ラボにアップロードするために圧縮します。

    cd FOLDER_WITH_TEST_OUTPUT/Build/Products : \
    zip -r MyTests.zip Debug-iphoneos   YOUR_SCHEME_iphoneosDEPLOYMENT_TARGET-arm64.xctestrun
    

テスト ファイルを手動で圧縮して、テストをパッケージ化することもできます。

  1. Finder を開き、派生データの出力用に指定したディレクトリに移動します。

  2. プロジェクト用に選択したフォルダーを開き、その中のBuild/Productsフォルダーを開きます。

  3. フォルダーDebug-iphoneosPROJECT_NAME _iphoneos DEVELOPMENT_TARGET -arm64.xctestrunを選択して圧縮します。

ステップ 4. (オプション) テストをローカルで実行する

Test Lab でテストを実行する前に、USB 接続デバイスを使用してローカルでテストを実行し、動作の品質をチェックできます。

xcodebuild test-without-building \
    -xctestrun "Derived Data/Build/Products/YourApp.xctestrun" \
    -destination id=your-phone-id

次のステップ

Firebase コンソールまたはgcloud CLIでテストをアップロードして実行します。