Testing Your iOS Application
The simple answer is: Yes.
Adding Internal Testers
Your build is ready for testing, but who’s going to test it?
Apple defines two types of testers for TestFlight:
- Internal Tester: This is an iTunes Connect user that has an Admin, App Manager, Legal, Developer, or Marketer role with access to your app. This is usually a team member or a client for whom you’re developing an app. You can add up to 25 internal testers.
- External Tester: This is any user outside of your team that wants to test your app. An external tester has no access to your iTunes Connect account in any way, and can only download and install the app. You can add up to 10,000 external testers.
Note: Before your external testers can test your app, you must submit your app to Apple for review, exactly as you would with a normal App Store submission. These reviews tend to go faster than normal app reviews, although you shouldn’t count on it, and once it’s approved, you can let external testers test your app.
Internal testers, on the other hand, are instantaneously notified about new builds as soon as they are uploaded and processed within iTunes Connect. If you want more control over the builds that are uploaded then you might want to consider multiple external test groups instead. You’ll learn more about external testers later, but for now, you’ll focus on internal testers.
To add an internal tester, head to the Users and Roles section in iTunes Connect:
Click the + button to add a new user:
Fill in your new user info, using an email address you have access to, and click Next:
Note: If the email address entered is not associated with an Apple ID, your tester will have to create an Apple ID to accept the invitation. This only applies to Internal Testers as they need to access iTunes Connect.
Now you need to assign a role for the new user. View the privileges for each role by clicking the ? button, and choose the appropriate one. You can also choose to limit access to a single app via the Apps dropdown, or leave the default All Apps access.
If you’re unsure which role to chose, use App Manager which allows beta testing management and the ability to download apps. Once you’re done setting up your new user, click Next.
Choose the type of notifications you want your new testers to receive, then click Save:
iTunes Connect now sends an invitation to the new user and, as the message indicates, that user first needs to verify his or her email address before the account will show in iTunes Connect. Go the inbox for the new user’s email address, find the email entitled Welcome New iTunes Connect User and click activate your account. Once you’re done with this process, the new user you added should be enabled on iTunes Connect and can be used as an internal tester.
Creating a new internal beta tester is only the first part of the process. The remaining step is to invite this particular tester to test your latest build.
It’s time to enable testing on your app — so the tester actually has something to test! 😁
Starting Beta Testing
To start beta testing of your app, go to the My Apps section on the iTunes Connect home page and click on your app:
Select the Activity tab. This is where you’ll find the build you uploaded earlier. If it’s still marked “Processing”, go make yourself a cup of coffee and come back later. 😁
Next, click the TestFlight tab. You may notice a yellow warning sign next to the build you’d like to send internal testers. If this is the case, click the warning sign and complete the required steps.
Once you’re done, the build status will change to Ready to Test:
Next, click Add iTunes Connect Users in the left side menu. You’ll then see a list of your internal testers. Select the ones you’d like to add as internal testers for this build and click Add.
All selected testers now receive an email with a link to download and install this build via the TestFlight app. You can find detailed instructions on the testers’ point of view in the last section of this tutorial.
Before you get into the user flow, you should learn how to add external testers.
First, click Test Information in the left side menu, and fill in all of the necessary information. At a minimum, this includes:
- Beta App Description
- Feedback Email
- Contact Information
As the message indicates, you must provide this information in order to submit a build for external testing. Once completed, click Save.
Now, click Add External Testers in the left side menu. iTunes Connect asks you to create a new testing group. It’s up to you how you choose to manage your groups. You can either have one group for all of your testers, different groups for different types of testers, or different groups for different apps. For this tutorial, you’ll create one group called Top-Testers.
Once you’ve created the group, you can start adding external testers to it. Click Add Testers in the pop-up:
At this point, you can choose between adding new testers manually, adding existing testers (people already testing another app or build), or importing testers from a CSV file. For this tutorial, you’ll add new testers manually. Choose Add New Testers and click Next.
Add the email addresses, first and last names of any external testers you want to add. Once you’re finished, click Add. You can always add more external testers by clicking the + button on the testing group page. All external testers count toward your 10,000 external testers limit:
You now need to select a build for your external testers. On the Builds tab, click the + button:
Then, select your build and click Next:
Note: Why do you select the build separately for your internal and external testers? Well, you may want your internal and external testers to be testing different builds. For example, your external testers may be testing your next release candidate, but your internal testers are testing your master build. By making you select a build for internal and external testers separately, iTunes Connect allows this kind of separation. Similarly, you can select different builds for different testing groups.
iTunes Connect may ask additional questions, such as whether the app requires sign-in or not. Complete the remaining steps, including providing testing information to display to your external testers.
iTunes Connect checks the Automatically notify testers checkbox by default. If you don’t want it to notify your testers as soon as the build is ready for them to review, uncheck this box (you have to notify them for the build to become available). Once complete, click Submit for Review.
iTunes Connect adds your app to the review queue and changes its status to Waiting for Review. To obtain approval, your build must fully comply with the full App Store Review Guidelines. Approval usually takes no more than 48 hours. Once Apple approves your version of the app, subsequent builds won’t require a review until you change the version number.
Once the app has passed Beta App Review, you’ll receive an email with confirmation that your app can now begin external testing. If you checked the Automatically notify testers checkbox, your external testers will receive notification emails at this point. Otherwise, you’ll have to go back to iTunes Connect to start testing. Your external testers will then receive an invitation email similar to the one received by your internal testers as described above.
Note: A build is only valid for 90 days. If you want your testers to use the app beyond that, you’ll have to upload a new build before the expiration date.
Where to Go From Here?
In this TestFlight tutorial, you learned how to invite internal and external testers to your app.
If you’re interested in learning more about iTunes Connect in general, and beta testing in particular, read through Apple’s TestFlight Beta Testing Documentation. Apple’s Developer site also has a summary page for TestFlight, which includes links to all the relevant documentation as well as a video outlining the TestFlight process.
We've also created our own short video on how to do this. You can watch that video below: