One of the really cool features of the App development process is getting real users to beta test your app. iOS has a great way to do this with the test flight app. This week, I’ll summarize the steps to set up Test Flight for your app to beta test. I’ll be using my own app MiFitnessTrails in Beta, so there’s no exercise files this time.
Your first step is to make an App ID. You’ll need to have a developer license for this. Go to your accounts at developer.apple.com/account and select the Certificates, ID’s and profiles button,
Then click App ID’s You see your current App ID’s.
I tend to use a specific App ID for projects I’m producing, and you can make one by pressing the Plus at top.
Register the App Fill in the information requested, using the bundle identifier for your app, your Developer ID, and the services you need. I’m keeping to the default services for now. That will set up a record like this:
Your second step is to set the app up in App Store Connect as you would an app you are publishing.
Go to My Apps and hit the plus button.
Select New App in the drop down that appears
You get the App registration screen.
Once completed and you press Create, Apple will process your request and set up an entry in App Store Connect. You’ll go into that entry. The first screen is for preparing for App Store permissions, and Its a good idea to fill out as much as you can here for final publishing.
App review works differently for Test Flight than for the App store. You are only reviewed once for each test group or version, with your initial build submission. Place your review information here. After your first build is reviewed , you can deploy new builds directly, without approval.
Your next steps are in Xcode. Under Targets, make sure you have all your versioning and build info correct for submission. Builds must be unique each time. I need to change my build number to 14.
Set your simulator to Generic iOS Device. You need to archive the project and you can only do that wiht this setting or connected to a live device. Select Product>Archive and archive the app. Go to the Archives, which might show up for you after archives or Select Window>Organzer(Option-Shift-Command-O). Hit the Archives tab at top.
Select the top archive for build 14. You can validate or distribute the app. I tend to use Validate first, so I can catch any errors I made before submitting. In actual workflows, it saves a lot of time, doing all the steps of a Distribute locally so you can correct your mistakes a lot faster. I know this one works, so I’ll click Distribute.
Leave all the defaults of iOS AppStore and Upload, then I leave all these defaults checked
In the next question. I automatically manage signing. Hit next one last time. Wait as the archinve is processed. I’ll get a summary screen when done. When Processed, I’ll upload it.
This will take some time, as much as ten minutes to an hour depending on the size of your files, so again do some waiting.
While we are waiting, head back to App Store Connect. I’ll set up testers. You’ll see on the side a button New Group.
If you Click that. It show another form for creating the group. I already set up a MakeAppPie list. Since creating a new group would mean a two-day review, I’ll skip creating a new one and show you the created one. There are two tabs, a Testers and a Buildtab.
In the Testers tab, you list your testers. All testers need a first name, last name and e-mail address. You can manually add testers, import a file or use the Public Link to get users to join. For example, If you wanted to join this beta test, you can go tohttps://testflight.apple.com/join/99XfjB8r . It would add you to this test group.
You’ll need a build for this, and you can and that in the next tab. Before we do, Let’s check on the build. go back to Xcode and You’ll find the upload was sucessful.
Press Done to dismiss the window. Head back to iTunes connect and in the sidebar select iOS Builds
You’ll see the new build is there. If not, refresh your browser.
In the MiFitness Trails App, you’ll see the build 14 on top of several other builds. Builds have expiration dates which are 90 days from the submission date.
On build 14, there are more questions about encoding. Click the trangle and you’ll get a link.
Then You’ll get a question about changes to encoding. Answer the yes/no question and hit Start Internal Testing. Internal testers are people who have priviledges on your Apple developer account. If you have notifications on for Test flight on your phone, You’ll probably get a notification like I did on my watch:
Back at the builds tab in your list, click the add button
You’ll get a list of the available builds.
Select the build you want. Hit Next. You’ll get another question about testing information. If your app goes through App review before test flight distribution, and there are user sign-ons and passwords in the app, Apple would like access to a test account to make sure everything works correctly.
I don’t have sign-on information so I’ll leave that unchecked. At the bottom, I’ll make sure to inform my users by checking the Automatically notify testers button. Hit next. You’ll get the testing information form.
Add the improvements you’ve made to the app and more instructions to the beta testers for what you are looking for. The hit the Submit for review button.
If this is your first upload, you added a group, or you changed versions, you’ll go through App review and the status of the build will change to Submitted for review. This has taken about one or two days in my experience. Once reviewed and accepted, or if you only changed the build number, this will be ready The build’s status changes to to Testing.
Your beta testers will get a notification of the new build:
When the beta testers go to the test flight App on their device, they can download and install the new version:
That’s the basics of Test Flight. This, of course, can change as Apple changes processes. Without long wait times for approval, with Test Flight you can get an app into a limited number of devices for real-life testing and gain a lot more insight into the effectiveness and improvements needed in your app. Having a large set of beta testers is great for marketing as well. You can start to find core customers for when the app goes live in the App Store.