TestFlight:概要、設定、テストの進め方

著者: IT Sectr 公開日: 2026-06-06 読了時間: 7 分

TestFlightは、テスターにプレリリース版のアプリビルドを配布するためのApple公式プラットフォームです。デベロッパーはベータ版をApp Store Connectにアップロードし、アクセスを管理し、公開前にフィードバックを収集できます。Apple Developer Documentationによると、TestFlightは公開リンク経由で最大10,000人の外部テスター、Apple ID経由で最大100人の内部テスターをサポートしています。

重要ポイント

  • TestFlightはiOS、iPadOS、macOS、tvOS、watchOSアプリのベータテストのためのApple公式ツールです
  • 内部テストでは、ビルドのモデレーションなしでApple IDごとに最大100人の参加者を追加できます
  • 外部テストでは、公開リンク経由で最大10,000人の参加者をサポートし、Beta App Reviewが必須です
  • ビルド管理には、テスターのグループ化、メトリクス収集、Appleからのクラッシュログが含まれます
  • TestFlightからの公開は再構築不要で、承認されたベータ版がワンクリックでApp Storeに送信されます

TestFlightとは?

TestFlightは、App Storeで公開する前にプレリリース版のアプリビルドを配布するための、App Store Connectに統合されたベータテストプラットフォームです。デベロッパーはXcodeでアーカイブしたビルドをアップロードし、IPAファイルを手動で配布することなくテスターに配布できます。

Appleは2014年に、プロビジョニングプロファイルによるAd Hoc配布を置き換えるためにTestFlightを買収しました。以前は、デベロッパーはデバイスのUDIDを収集し、プロビジョニングプロファイルを作成し、サードパーティのサービスを通じてIPAを配布していました。TestFlightはプロセス全体を自動化しました。テスターはTestFlight Appを通じてベータアプリをインストールし、デベロッパーはWebインターフェースを通じてアクセスを管理します。

WWDC 2024によると、TestFlightは月間200万以上のテストインストールを処理しています。このプラットフォームはiOS、iPadOS、macOS、tvOS、watchOS、visionOSを含むすべてのAppleプラットフォームでの配布をサポートしており、Appleエコシステムにおいて唯一の統合ベータテストツールとなっています。

内部テストと外部テスト

TestFlightはテストを2つのタイプに分けています。チームメンバー向けの内部テスト(最大100名、アップロード後すぐにビルドが利用可能)と、外部ユーザー向けの外部テスト(最大10,000名、Beta App Reviewが必要)です。内部テストはモデレーションが不要なため、チーム内での迅速なビルド検証に最適です。

外部テストでは、メールまたは公開リンクでテスターを招待できます。Beta App Reviewに合格すると、招待者全員がビルドをダウンロードできるようになります。初めて公開するアプリの場合、App Store Review Guidelinesに従って外部テストが必須です。

TestFlightの仕組み:主なシナリオ

TestFlightのワークフローは、Xcodeでアプリをアーカイブし、OrganizerまたはTransporterを介してApp Store Connectにアップロードすることから始まります。アップロード後、ビルドは自動検証とセキュリティスキャンを受けます。

内部テスターは、TestFlight Appを通じて利用可能なビルドの通知を受け取ります。アプリをインストールし、内蔵のスクリーンショットおよびテキストコメントインターフェースを通じてフィードバックを残せます。外部テスターの場合は、Beta App Reviewの承認が必要で、承認後は内部テスターと同様にビルドが配布されます。

TestFlightは自動的に使用状況メトリクスを収集します。インストール数、クラッシュログ、注釈付きスクリーンショット、フィードバックなどです。デベロッパーはApp Store ConnectのTestFlightセクションでこれらのデータを確認できます。すべてのデータはビルドバージョンごとに集約されるため、異なるビルド間の安定性を比較しやすくなります。

ビルドの有効期限

TestFlightにアップロードされた各ビルドには90日の有効期限があります。期限が切れると、テスターはアプリをインストールまたは起動できなくなります。テストを続行するには、バージョン番号を増やした新しいビルドをアップロードする必要があります。この制限により、デベロッパーは定期的にビルドを更新するようになります。

有効期限が近づくと、TestFlightはデベロッパーとテスターの両方に通知を送信します。新しいビルドが期限内にアップロードされない場合、テストは中断され、参加者は新しいバージョンが公開されるまでアプリにアクセスできなくなります。

App Store ConnectでのTestFlight設定

TestFlightの設定は、App Store ConnectのTestFlightセクションから始めます。開始するには、少なくとも1つのアップロード済みアプリビルドが必要です。インターフェースは3つの主要セクションに分かれています。ビルド、内部テスター、外部グループです。

内部テスターはApple IDで追加されます。各参加者は、テストアクセスを含む役割でApp Store Connectを通じて招待する必要があります。招待後、テスターはメールを受け取り、デバイスのTestFlight Appを通じてアプリをインストールできます。

外部テストでは、シナリオに応じてテスターをグループ化します。各グループは特定のビルドにリンクされます。グループには自己参加用の公開リンクを設定でき、オープンソースプロジェクトや大規模ベータテストに便利です。Apple Developer Documentationによると、公開リンクはいつでも無効化でき、既に参加しているテスターのアクセスには影響しません。

TestFlightへのビルドアップロード

TestFlightへのビルドアップロードは、プロジェクトをアーカイブした後、Xcode Organizerを通じて行います。アップロードには、App Store ConnectでAdminまたはApp Managerの権限を持つApple Developer Programアカウントが必要です。

アップロード前に、ビルドは有効な配布証明書で署名され、App Store配布用のプロビジョニングプロファイルを含んでいる必要があります。Xcodeは、アクティブなデベロッパーアカウントがある場合、自動署名を通じて自動的に署名を設定します。

bash
# Upload via xcrun altool (Xcode 15+ uses notarytool)
xcrun notarytool submit MyApp.ipa --apple-id "developer@example.com" --team-id "TEAMID123" --password "@keychain:AC_PASSWORD" --wait

# Upload to App Store Connect directly
xcrun altool --upload-app -f MyApp.ipa -t ios -u "developer@example.com" -p "@keychain:AC_PASSWORD"

アップロード後、ビルドは自動検証を受けます。バイナリ検証、悪意のあるコードのスキャン、App Store Review Guidelinesへの準拠チェックなどです。検証には通常、数分から1時間かかります。ステータスはApp Store ConnectのTestFlightセクションに表示されます。

CI/CDによる自動アップロード

CI/CD(GitHub Actions、Bitrise、Jenkins)では、xcrun altoolまたはnotarytoolを使用して、Xcodeなしでビルドを直接アップロードします。認証キーはKeychainまたはApp Store Connect APIに保存されます。Fastlaneは、プロセス全体を自動化するupload_to_testflightアクションを提供します。

テスターの招待:内部と外部

TestFlightへのテスターの招待方法は、テストの種類によって異なります。内部テスターはApp Store Connectで直接Apple IDによって追加され、アップロード後すぐにすべてのビルドにアクセスできます。外部テスターは、特定のビルドが割り当てられたグループを通じて招待されます。

外部テストでは、Beta App Reviewに合格する必要があります。これは、基本的な機能とルールへの準拠をチェックするApp Reviewの簡略版です。最初の外部ビルドは通常1〜2日でレビューに合格し、以降のビルドはより迅速になります。承認後、グループ内のすべてのテスターが通知を受け取ります。

公開リンクにより招待が簡素化されます。デベロッパーはWebサイトやソーシャルメディアにリンクを公開し、ユーザーがそれをクリックすると自動的にテストに参加します。TestFlightは外部グループあたり最大10,000人の参加者をサポートし、グループ数に制限はありません。各アプリに対して、異なるビルドを持つ複数のグループを設定できます。

フィードバックの管理

テスターはTestFlight Appを通じてフィードバックを送信し、スクリーンショットや注釈を添付できます。デベロッパーはApp Store Connectで、ビルドごとにグループ化されたすべてのフィードバックを確認できます。各フィードバックにはOSバージョン、デバイスモデル、タイムスタンプが含まれており、バグの再現と修正が容易になります。

テスト後の公開

TestFlightからApp Storeへのアプリ公開は再構築を必要としません。App Store Connectで承認されたベータビルドを選択し、「レビューに送信」をクリックするだけです。ベータテストを通過した同じビルドが、再コンパイルなしで最終的なApp Reviewに送信されます。

これにより、テスターがテストした正確なバージョンが本番環境にリリースされ、ベータ版とリリース版の間の差異のリスクが排除されます。最終的なApp Reviewに合格すると、ビルドは設定された可用性ルールに従って自動的にApp Storeに公開されます。

公開前に、デベロッパーはメタデータ(バージョンの説明、新しいOSバージョン用のスクリーンショット、変更内容)を更新する必要があります。App Storeに送信されなかったTestFlightビルドは、アップロードから90日後にすべてのテストデータとともに自動的に削除されます。

よくある質問

TestFlightでのビルド検証にはどのくらい時間がかかりますか?

自動検証には通常5分から1時間かかります。外部テストのBeta App Reviewは数時間から2日程度です。以前のレビュー履歴が考慮されるため、2回目以降のビルドはより迅速にレビューされます。

Apple Developer ProgramなしでTestFlightを使用できますか?

TestFlightはApple Developer Programのメンバー(年間99ドル)のみ利用可能です。サブスクリプションがない場合、App Store Connectへのビルドアップロードはできません。サブスクリプションなしでAd Hoc配布を行うには、EnterpriseアカウントまたはSideStoreが必要です。

TestFlightとAd Hoc配布の違いは何ですか?

Ad Hoc配布では、デバイスのUDID収集、プロビジョニングプロファイルの作成、IPAの手動配布が必要です。TestFlightはプロセス全体を自動化します。デベロッパーがビルドをアップロードすると、テスターはプロビジョニングプロファイルやUDIDなしでTestFlight Appを通じてインストールできます。

TestFlightのビルドの有効期限はどのくらいですか?

TestFlightでのビルドの有効期限はアップロードから90日です。期限が切れると、テスターはアプリをインストールまたは起動できなくなります。テストを続行するには、バージョン番号を増やした新しいビルドをアップロードする必要があります。

TestFlightはmacOSアプリケーションをサポートしていますか?

TestFlightはmacOS 11 Big Sur以降のmacOSアプリケーションをサポートしています。テスターはMacのTestFlight Appを通じてベータ版をインストールします。アップロードと管理のプロセスはiOS版と同じで、Xcodeでアーカイブし、Organizerを通じてアップロードします。

まとめ

  • TestFlightはApp Store ConnectとXcodeに統合されたApple公式のベータテストプラットフォームです
  • 内部テスト(最大100名)は、モデレーションなしでビルドアップロード直後に利用可能です
  • 外部テスト(最大10,000名)はBeta App Reviewが必要で、公開リンクをサポートしています
  • ビルドのアップロードはXcode Organizer、xcrun altool、またはCI/CD自動化を通じて行います
  • フィードバックとメトリクスは自動的に収集され、クラッシュログや注釈付きスクリーンショットが含まれます
  • 公開は承認されたベータビルドから再コンパイルなしでApp Storeに公開されます
  • 推奨事項:すべてのプレリリースビルドには、Appleの唯一の公式インフラストラクチャとしてTestFlightを使用することをお勧めします

ターンキー方式のモバイルアプリケーションを開発します

IT Sectrは2017年からスタートアップや企業向けにiOS・Androidアプリケーションを開発しています。私たちがご相談に乗り、最適なソリューションをご提案します。

プロジェクトについて相談

こちらもお読みください