このガイドでは、Firebase Test Lab でのテスト用に XCTest を準備する方法について説明します。
ステップ 1 : プロジェクトの派生データの場所を構成する
Xcode は、ビルドしたテストを含む、コンパイル済みの iOS アーティファクトを Derived Data ディレクトリに配置します。必要に応じて、そのディレクトリの既定の場所をそのまま使用することもできますが、特に Test Lab で頻繁にテストを実行する場合は、ファイルにアクセスしやすい場所を選択すると便利です。
- Xcode でプロジェクトを開きます。
- macOS メニュー バーで、[ファイル] > [プロジェクト設定...]を選択します。
- Derived DataドロップダウンをDefault LocationからCustom Locationに変更します。
- ドロップダウンの下のフィールドで、Xcode がテストを出力する場所を選択します。
ステップ 2 : 一般的なテスト ファイルを作成する
Test Lab は、 XCTestフレームワークを使用して単体テストと UI テストを実行します。 Test Lab デバイスでアプリの XCTests を実行するには、汎用 iOS デバイスでテストするためにビルドします。
- Xcode ワークスペース ウィンドウの上部にあるデバイス ドロップダウンから、[Generic iOS Device] を選択します。
- macOS メニュー バーで、[製品] > [ビルド対象] > [テスト] を選択します。
ステップ 3 : アップロード用にアプリをパッケージ化する
最後に、ビルドしたテスト ファイルを.zip
ファイルに圧縮して、Test Lab にアップロードするテストをビルドおよびパッケージ化します。
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
テストが正常にビルドされたら、テスト ラボにアップロードするために圧縮します。
cd FOLDER_WITH_TEST_OUTPUT/Build/Products : \ zip -r MyTests.zip Debug-iphoneos YOUR_SCHEME_iphoneosDEPLOYMENT_TARGET-arm64.xctestrun
テスト ファイルを手動で圧縮して、テストをパッケージ化することもできます。
Finder を開き、派生データの出力用に指定したディレクトリに移動します。
プロジェクト用に選択したフォルダーを開き、その中の
Build/Products
フォルダーを開きます。フォルダー
Debug-iphoneos
とPROJECT_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でテストをアップロードして実行します。