Earlier in the course, you uploaded a barebones app to App Store Connect to demonstrate how easy it was to get going with App Store distribution. With this App Record in place, we can now examine what is needed to get your app in the hands of testers. This is done via TestFlight, Apple’s internal testing platform.
We’ll start by going to App Store Connect.
Let’s add some testers to TestFlight. There are 2 types: internal testers, and external testers. Internal testers are members of your internal team, and are your first line of testing outside your immediate development team. You can invite 100 members to your internal testing team.
This is done by going to the Users and Access portion of App Store Connect. You can add a new user, and fill out the first name, last name, and email. This email must be the same as their Apple ID used in your team.
Choose which role they should belong to, and then which apps they should have access to. We’ll choose App Manager for the role, all apps from the drop down box.
App Store Connect will then send an invitation to that user, and when apps are uploaded to TestFlight, they will get notified.
Now you can go to My Apps from App Store Connect, and pick the app you want to send to TestFlight.
At this point, our test app has been processed, and is marked as “ready for review”, so we should be ready to go.
Select the third tab, TestFlight.
You’ll see that the builds we have in place are marked “Ready to submit”. There is one section on the left hand side - Test Information - that we need to fill out before we’re able to test our app.
Add a quick beta app description, a feedback email, and marketing and privacy urls.
Then be sure to leave beta app review information in case the Apple reviewer needs to contact you.
We’ll put a simple license agreement in place just for the purpose of this demo.
On the left side menu, you can add App Store Connect Users to add testers to your app.
Click the plus button next to “Internal Testing”, and then add an internal group name. Leaving the checkbox checked here will automatically send out new builds when they are pushed to App Store Connect.
Select the testers you want, and click “Add”. The new testers will get sent an email, inviting them to download this app for testing via the TestFlight app. Internal testers will get notified immediately about the app’s availability.
The TestFlight app is available from the App Store, and is required for users that test with TestFlight. It handles distribution of the apps, and can even collect screen grabs and crash reports for routing back to App Store Connect. Crash reports are also visible from the Organizer window in Xcode, in the “Reports” section.
Eventually, you’ll want to add testers outside your organization, which means you’ll want to add external testers. You can add up to 10,000 external testers. You can make groups for external testers for easier management, and the overall process for adding testers is like adding internal testers.
After you create a group, you can choose which build to test. This comes in handy if you want to give different groups different builds of your app, for example, when using A/B user interface testing.
You can also provide specific testing instructions to the users by filling out the Testing information box. This can be useful to address testing new features or fixes to previously submitted bug reports.
When you’re done, you can click submit, and TestFlight will send out the necessary invites.
We won’t do this here, since this will trigger a TestFlight App Store review, which we’re not ready for yet.
Speaking of which, on your first submission to TestFlight, it will go through a TestFlight App Store review process, which typically gets approved within 48 hours. This doesn’t guarantee that your app will get approved in the normal App Store review process, however.
One final tidbit, if we did submit a build for external testers to test, you can provide a link for users to download your TestFlight beta, and even set a limit on it, if you want to widen the possible test base but limit the amount that can sign up at once. This might be useful when looking for users on Twitter or Mastodon. This can be done under the “Tester Management” section in the external testing section of TestFlight.
Once testers get access to your app within the TestFlight app on iOS or iPadOS, they can download your app, take and send screenshots, or send you general feedback right from the app.
App Store Connect lets you see all that feedback in once place. Go to your App Store Record, and the the TestFlight tab.
Here, if we had testers for our app, you could see feedback and screenshots submitted by your testers.
You can get information such as device and iOS information, which is also available in the email that was provided for feedback when setting up your external testing groups.
Finally, when you’re ready to end TestFlight testing for this build, you can expire the build by going to the builds section, and click on “Expire Build”.
Once all your testing is complete, you’re almost ready to send the app to App Store Review. Before we dive into that process, however, let’s recap what we learned in this part of the course, which we’ll do in the next episode.