【Apple】TestFlightでテスターにアプリを配布する方法!

この記事からわかること
- TestFlightとは?
- iOSアプリをテスターに配布する方法
- ベータテスターの登録方法
- テスターの権限の種類
- 社内や社外の人にアプリを事前に配布するには?
index
[open]
\ アプリをリリースしました /
iOSアプリを開発者以外の人にテストしてもらうTestFlight(テストフライト)という仕組みについてまとめていきます。
TestFlightとは?
TestFlightはiOSやwatchOSなどAppleのアプリケーションをリリースする前に非開発者(友達や家族、社内の人、お客さん)などに配布するための機能です。またTestFlightの一部の配布機能では通常のアプリ審査より簡易なAppleからの審査に合格する必要があるものもあります。
TestFlight機能を利用するためにはApp Store Connectへログインする必要があり、また配布対象用のアプリを登録しておく必要があります。
本来開発段階のアプリをインストールするためにはXcodeからビルドする手段を取るのが基本ですが、その場合だとインストール端末のUDIDの登録とプロビジョニングプロファイルへの反映など諸々の設定をする必要があります。Apple Developer Programに登録できるデバイス(UDID)が100台までなど制限もあるのでXcodeからのビルドではテスト配布するのに向いていません。
これを解消できるのがTestFlightでUDIDの登録やプロビジョニングプロファイルへの反映などは不要で、テスターに必要なのはAppleアカウントのみになります。
また配布したビルドは90日間しかインストールできないようになっています。
まとめ
- TestFlightは非開発者へのアプリ配布手段
- UDIDの登録やプロビジョニングプロファイルへの反映は不要
- テスターに必要なのはAppleアカウントのみ
- 90日間しかインストールできない
内部テスターと外部テスター
TestFlightには「内部テスター」と「外部テスター」という区分があります。
内部テスター
内部テスターとはApp Store Connectでテスターとして登録されているユーザーのことを指します。後述していますがApp Store Connectへユーザーを招待した際にAccount Holder
、Admin
、App Manager
、Developer
、Marketing
の権限を持っているユーザーが内部テスターになります。この際に登録するメールアドレスはテストを行う端末で使用しているApple IDのメールアドレスである必要があります。
内部テスターは最大100人までテスターとして登録することが可能になっており、内部テスターへの配布の場合は審査は不要となっています。
そのため内部テスターには基本的に社内の人間などを登録します。
外部テスター
外部テスターはApp Store Connectへ未招待のユーザーのことを指します。配布できるのは最大10000人までとかなり多く、メールアドレスまたは公開URLのどちらかを使用して周知することが可能となっています。
外部テスターへの配布にはAppleの審査に通過する必要がありますが、審査自体は1日程度で完了することが多いです。
まとめ
- 内部テスターは100人まで
- 内部テスターへの配布は審査不要
- 外部テスターは10000人まで
- 内部テスターへの配布は審査必要
TestFlightアプリを使用して実機でテスト
テスターに配布されるアプリは通常のApp Storeではなくテスト専用のTestFlightアプリを使用します。そのためテスターになる人には内部テスターでも外部テスターでもTestFlightアプリのインストールを行なってもらう必要があります。

内部テスターの登録方法
内部テスターを登録するには「App Store Connect」にログインし「ユーザとアクセス」をクリックします。

現在登録されているテスターが表示されていると思うので「+」をクリックしてユーザを登録していきます。ユーザには役割を付与することができ、「Admin(管理者)」や「Marketing」などによって権限が異なるので適切なものを指定して「招待」をクリックします。

指定したメールアドレスに招待メールが届くのでそこから招待を受けると内部テスターとして登録されます。
テスターの権限の種類
テスター(正確にはApp Store Connect管理)の権限の種類と役割は以下のとおりです。
権限 | 概要 |
---|---|
Account Holder | プログラムへの登録を完了させた人。Apple との契約を締結する担当者 |
Admin | チームの補佐役でAccount Holder と同じ権限 |
Finance | 財務情報の管理担当 |
App Manager | 価格、App Store 情報、App の開発とデリバリなどApp 自体の管理担当 |
Developer | Appの開発とデリバリーを管理担当 |
Marketing | マーケティング管理担当 |
Sales | App の売上やダウンロード数などのデータを分析担当 |
Customer Support | カスタマーレビュー担当 |
また権限の強さ的にはAccount Holderが一番強く、Finance、Marketing、Sales、Customer Supportが同列で一番弱く設定されています。権限の違いにより作業可能な内容が異なるので以下公式サイトを参考に適切な権限を振ってあげる必要があります。
アプリテスト配布の流れ
- アプリを開発
- 通常のリリースの流れでApp Store Connectにアーカイブ
- 内部ならベータテスターを登録
- テスターはTestFlightアプリをインストール
- AppStore Connectの「TestFlight」タブから配布するビルドを選択
- 内部 or 外部へ配布 (外部のみ審査あり)
テスター(内部)へのアプリの配布方法
内部(ベータテスターとして登録してある)の人へ配布する方法を見ていきます。先に先ほどの手順でテスターを増やしておいてください。
配布したいアプリの申請画面から「TestFlight」をクリックします。左側にある「内部テスト」の「+」からグループを登録します。ここで「自動配布を有効にする」にチェックを入れるとビルドが更新されるたびにそのグループに自動配布されます。チェックを外すとグループに対して手動でビルドを追加するたびに配布されるようになります。この設定はグループ作成後では変更できないので注意してください。

グループの中に対象のテスターを追加します。追加ができたら「ビルド」からテスト配布したいバージョンの「管理」ボタンをクリックします。

輸出コンプライアンスの内容を確認して「保存」をクリックすると対象者にメールが送信されます。実際に届くメールが以下の通りです。テスターは「View in TestFlight」から記載されているコードをアプリに打ち込むことでテスト配布が完了になります。

テスト配布時にメモをつける
テスト配布時にテスターに識別しやすいようにメモをつけることも可能です。

ビルド番号部分をクリックすると以下のような画面に遷移するので「テストの詳細」の中に伝えたい内容を記述しておけばテスターがインストールする際に表示されるようになります。

テスター(外部)へのアプリの配布方法
続いて外部へのアプリの配布方法を見ていきます。基本的な手順は内部と同じです。
配布したいアプリの申請画面から「TestFlight」をクリックします。左側にある「外部テスト」の「+」からグループを登録します。

続いて「ビルド(0)」横の「+」からテスト配布したいバージョンをクリックし、審査に必要な情報を入力していき「審査へ提出」をクリックします。するとリリース時同様に審査が始まり、審査が通ると公開用のhttps://testflight.apple.com/join/xxxxx
形式のURLが発行されます。
このリンクからテスト用のアプリをTestFlightアプリへインストールすることが可能になります。
外部テスターに配布できない場合
ビルドをアップロードしたのに外部テスターに配布ができない場合はビルド設定に問題がある可能性があります。アーカイブ作成後アップロードする際に「App Store Connect」を選択していたか確認してください。「TestFlight Internal Only(内部テスターのみ)」にしていた場合は配布できないので注意してください。

その他の項目の種類と概要については公式サイトを参考にしてください。
公式リファレンス:Select a method for distribution
まだまだ勉強中ですので間違っている点や至らぬ点がありましたら教えていただけると助かります。
ご覧いただきありがとうございました。