
Testflightとは-TESTFLIGHTの使い方について
TestFlightとは
TestFlight Beta Testingはappleにより開発されたソフトで、iOS、 watchOS、 tvOS、iMessageのアプリをストアに配布する前、テストにユーザーを招待するためのものです。
TestFlightを使用すると、App StoreでAppやApp Clip体験をリリースする前にユーザーをテストに招待し、有益なフィードバックを容易に受けることができます。テスターのEメールアドレスを使うか、パブリックリンクを共有することで、最大10,000人のテスターを招待できます。

TestFlightとは? TestFlightでベータ版テストが簡単に (Source: apple.com)
https://developer.apple.com/jp/testflight/
TestFlightの使い方について:~iOS Beta Testing~
この記事では、TestFlightの使い方についてご紹介していきます。
下記のステップで簡単に説明をしていきます。
- Submit:開発者はどうやって開発したビルドをストアに配布するのか
- Invite: アプリを検証してもらうためにテストに招待する。
- Install:招待機能経由でテスターはどうやってビルドをインストールできるのかについての説明。
はじめに
参考記事: https://www.raywenderlich.com/5352-testflight-tutorial-ios-beta-testing
この記事で用いられる画像は上記記事から参考にしたものです。この記事は参考記事を翻訳し、TestFlight使用時に必要な注意を把握頂けるために、わかりやすくまとめたものです。
ここで述べている各ステップを実現できる前提条件して、事前にappleストアにビルドを配布する方法を知っておかなければなりません。配布方法が全部こちらの記事に書いてありますので、ご参照ください。
リンクはこちら:How to Submit An App to Apple: From No Account to App Store.
それではTestFlightの使い方についてご紹介させていただきましょう。
まずは、iTunes Connectにビルドの配布
プロジェクトをXcodeで開きます。Bundle Identifier, Team ID, Release Code Signing Identityの設定情報が正しいかどうか必ず確認してください。Scheme chooserで下記画像と同じように、Generic iOS Deviceを選択してください。

Generic iOS Deviceを選択してください。
次に、Productメニュー でArchiveを選択してください。

Productメニュー でArchiveを選択してください。
ここで問題なければ、XcodeのArchivesタブ内オーガナイザーウィンドウを開きます。
Xcodeからもおすすめの選択も出てくるので、全部選択してから「Next」を押して下さい。
次は、「distribution signing」の設定画面です。手動で「chọn automatic signing」 あるいは「distribution certificate and provisioning profile」を選択してください。完了したら、また「Next」を押してください。

「Next」を押してください。
確認処理が行われた後、画面に配布しようとするアプリの情報が表示されます。
アプリがiTunes Connectに配布される処理がここで行われます。アプリのコンパイル、確認、サイン処理が行われている際中に、画面で進捗が表示されます。処理が終わったら、下記のような完了のメッセージが出てきます。

「Done」を押してください。
「Done」を押してください。
Xcodeでの作業はこれで終わります。画面に「InProgress」が出てきますが、15分後にアプリが配布されるようになります。
以上が、iTunes Connectにアプリを配布るする方法の説明でした。次は、テスターをテストへの招待、TestFlightのインストール方法や端末への接続についての説明になります。
内部テスターの追加
アプリのビルドがappleストアに配布されましたが、まだテストの必要があります。
どうやってテストにテスターを招待するのか?内部テスター、外部テスターとは?
内部テスター、外部テスターは下記のようにappleが定義しています。
- 内部テスター:こちらはアクセス権限が付与されたアドミン、アプリマネージャー、開発者、マーケティング担当者としてiTunes Connectを使っているユーザーです。一般的には開発チームのメンバー、顧客の場合が多いです。制限は25ユーザーまでです。
- 外部テスター: こちらはチームとまったく関係ない人のことを指しています。iTunes Connectに接続しなくてもよいので、簡単にダウンロードできます。
制限は1万ユーザーまでです。
外部テスターに検証してもらうために、まずアプリをストアに配布し、appleに確認してもらわなければなりません。apple側の確認は正式な配布の承認より早いので、確認が取れて、承認されたら、アプリをダウンロードして、テストできます。
iTunes Connectに新しいビルドが配布され、承認されたら毎回お知らせが内部テスターに届きます。つまり、内部テスターはいつも最新ビルドを確認することができます。複数のビルドを管理したい場合は、外部テスターグループの構築がおすすめです。しかし、それを後回しにし、ここで内部テスターに集中して頂いて結構です。
内部テスターを追加するために、iTunes Connect内の「Users and Roles」にアクセルする必要があります。

iTunes Connect内の「Users and Roles」にアクセルする必要があります。
[+]を押して、新しいユーザーを追加しましょう。

[+]を押して

[Next]を押して
次に、ユーザーにrole(役割)を割り当てる作業になります。[?]を押して、特権を確認して、適切な物を選択してください。アプリドロップダウンにて該当ユーザーにアクセルできるアプリを制限をかけることができます。あるいは、すべてのアプリにアクセルできるデフォルト設定でも大丈夫です。Roleの選択に迷っている場合は、App Managerを使ってください。これで、ベータテストの管理や、アプリのダウンロードが両方ともできます。設定が完了したら、「Next」ボタンを。
それから、テスターに届くお知らせのタイプを選択して、「Save」ボタンを。

「Save」ボタンを。
iTunes Connectがメールに新規で追加されたユーザーに招待を送信します。アカウントを有効にするために、まず、メールを確認してください。メールの受信箱にて、タイトルが「Welcome New iTunes Connect User」であるメールを探して、メール内の「activate your account」を押してください。上記が完了したら、アカウントが有効に変わり、内部テスターになります。

「activate your account」を押してください。
以上の内部テスター作成はプロセスの最初ステップです。次に、最新ビルドにテスターを招待するステップの説明です。
テスト頂くために、アプリを有効にする必要があります。
ベータテストを始めましょう。
ベータテスタを始める前に、まずiTunes Connectのホームページの「My Apps」でテストしたいアプリを選択してください。

iTunes Connectのホームページの「My Apps」でテストしたいアプリを選択してください。
それから、「Activity」タブを選択してください。ここで、配布されたアプリを確認できます。「Processing」のステータスになっていた場合は、15分待っていてください。

「Activity」タブを選択してください。
次に、「TestFlight」を押すと、開発したビルドに「Missing Compliance」という黄色のアラートメッセージが表示されますが、それを押して、質問に答えてください。単純なビルドに関する情報の確認だけです。
上記作業を完了したら、ビルドのステータスが「Ready to Test」に変わります。
まず左側のメニューの「Add iTunes Connect User」を押してください。ここで、内部テスター一覧を確認できます。内部テスターのアカウントを指定して、「Add」を押してください。指定されたテスタのメールにはTestFlight経由でアプリがダウンロードできるリンクが送信されます。詳細な説明は記事の「テスターの視点」にあります。
ユーザーの流れを知る前に、もう少し外部テスターの追加についてご説明します。
外部テスターの追加
まず、左側にある「Test Information」を押してから、必要な情報を入力してください。最低でも、下記が必要になります
- ベータアプリのディスクリプション
- フィードバック用のメール
- 連絡先
完了したら、 「Save」ボタンを
ここで、左側にある「Add External Testers 」を押して下さい。iTunes Connectから「new testing group」作成のリクエストが表示されます。自分の管理のしかたと合わせて、すべてのテスター向けのグループ、テスタータイプで分けたグループ、アプリで分けたグループという基準の一つでグループを作成して下さい。ここで「Top-Testers」のグループ名を作成しておきます。
グループ作成が完了したら、そのグループに外部テスターを追加する作業になります。ポップアップ内の「Add Testers」ボタンを押してください。

「Add Testers」ボタンを押してください。
ここでは手動にて新規テスターを追加する、既存テスターを追加する、CSVファイルから出力するという3つの選択があります。この記事では、手動で新規テスターを追加するという選択について説明します。「Add New Testers」を選択して、「Next」を押してください。
追加したい外部テスターのメールアドレス、名前を入力して、「Add」を押してください。毎回、[+]を押して、グループに新しい外部テスターを追加することができます。制限は1万ユーザーまで。

外部テスターのメールアドレス、名前を入力して
グループにビルドを指定してください。「Builds」タブにて、[+]ボタンを

「Builds」タブにて、[+]ボタンを

「Next」ボタンを
注意:なぜ、外部テスターと内部テスターにテストしてもらいたいビルドを別で選択する必要があるのでしょう。理由は単純に違うビルドでテストしてほしいからです。
例えば:リリースが迫るビルドに関しては外部テスターにテストしてもらいます。しかし、外部テスターにテストしてもらうのは最新マスターです。これは違うグループであれば、違うビルドをテストすることにも該当します。
iTunes Connectから「あなたのアプリはログイン機能がありますか?」のような確認質問が表示されるかもしれません。続けて、残りのステップを完了しましょう。(外部テスターにビルドの情報提供ステップも含め)
「Automatically notify testers」にチェックされているのはデフォルト設定ですので、ビルドの配布完了をテスターに知らせたくない場合は、外してください。(後程、テスターまで知らせる必要がありますので、ご注意下さい。)全部完了しましたら、「Submit for Review」ボタンを

「Submit for Review」ボタンを
iTunes Connectがアプリにレビューキューに追加すると、ステータスが「Waiting for Review」に変更されます。承認のために、App Store Review Guidelinesに書いてある条件を満たさなければなりません。承認は48時間以内に行われます。また、一回承認されたアプリはバージョンナンバーに変更がなければ、次のビルドを配布する時はレビューがスキップされます。この承認は「Beta App Review」と呼ばれます。
「Beta App Review」を通ったらら、アプリのテストができる状態のお知らせるメールが送信されます。前述した「Automatically notify testers」にチェックした場合、同時に外部テスターのメールにもお知らせが届きます。逆に、チェックをしていない場合は、iTunes Connectにて「start testing.」を押す必要があります。そうすると、内部テスターに届くテスト招待メールが外部テスターにも送信されます。
注意:ビルドの有効期限は90日までですので、アプリを長く使いたい場合は、期限が切れる前に新規ビルドを配布しなければなりません。
これで、開発者側の作業がおわります。次に、アプリをテストできるまで必要な作業を見ていきましょう。
テスターの視点
ここで、テスターがどのようにしてアプリにアクセスして、ダウンロードするかについての説明です。
TestFlightのインストール
appleストアで「TestFlight」というキーワードで検索して、TestFlightをダウンロードします。
TestFlightをダウンロードして、アプリを立ち上げます。ログイン画面が表示される場合、任意のAppleIDでログインしてください。プライベートなAppleIDでもよいのです。
Redeeming Your App
新しいテスターをテストに招待した後、テスターのメールにて「TestFlight経由でアプリテストする」のような招待メールが送信されます。

テスターのメールにて「TestFlight経由でアプリテストする」のような招待メールが送信されます。
テスト端末で、メールを開き、「View in TestFlight.」を開いてください。TestFlightを立ち上げて、先程TestFlightでログインしたAppleIDで招待を引き換えてください。
そうすると、アプリの「app preview page 」が開かれます。

アプリの「app preview page 」が開かれます。
注意:「View in TestFlight」を押しても、アプリが自動的に起動しない場合、リンクをコピーして、Safariに貼り付けてください。そこで、引き換えコードが表示されますので、TestFlightアプリに張り付ければいいです。
「Install」ボタンを押すると、アプリがダウンロードされ、ホーム画面に表示されます。他のアプリと同じですが、アプリ名の左にオレンジ色の点があり、それでTestFlightからインストールしたアプリを判別できます。

他のアプリと同じですが、アプリ名の左にオレンジ色の点があり
これから、新しいバージョンのアプリが配布されたら、TestFlightからお知らせが届きます。アプリを更新して、テストを行ってください。
以上で、TestFlightの使い方について説明しました。不明点やご質問がある方はお気軽にお問い合わせください。ONETECHの開発者はいつも全力であなたをサポートします。
この記事は少しでもお役に立てばうれしいです。
ONETECHASIAの開発者より。
ONETECHはベトナムオフショアでスマホアプリ開発を行っています。クライアントはSIer、事業会社、広告代理店、デザイン会社など60社以上の実績。出版、流通、医療、エンタメ、ゲーム、運輸、物流、製造、建設、通信業界などへ多様なアプリを提供しています。最近ではFlutter、Reactなどでワンソースでクロスプラットフォーム(iOS、Andoroid)を開発が主流となっています。コンサルタントが、企画から要件定義、開発、運用までスマホアプリ開発をサポートします。