App Store Connect (TestFlight Management)

From MMS Wiki
Revision as of 13:31, 7 February 2020 by Charles (talk | contribs) (Initial version of this page. Adapted from instructions I shared in Slack.)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search


Not describing how to set up a new app[1].

Abbreviations used here:

  • TF - TestFlight
  • ASC - App Store Connect
  • ASCU - App Store Connect Users
  • GPS - Google Play Store
  • XC - XCode. Apple mandated development tool for all things Apple

iOS Versioning

Version number

Version number scheme is major_version.minor_version.patch_version (e.g. 4.0.8). Great amount of details here.

Build number

On iOS build number is the rapidly iterated small number following the version number in parenthesis (i.e. (2) in 4.0.8 (2)). Build number is an integer that can only ever increase. Incrementation steps can be skipped, but usually there isn't a reason for that.

Categories of testers on ASC

For each app there are two categories of testers:

ASCU (App Store Connect Users)

Internal (or external) people who get every single build. This should always include our internal testing account So far Tish and Kristo have opted to getting every single build as well.

=External Testers

Collections of external (or internal) individual people for better control over who gets what build when. This can introduce a delay of TF review.

TF Review

Process by which Apple verifies basic suitability of an app for being shared to outside parties via TF.

TF review is only required if the version of the app changes, not when the build number gets iterated. So e.g. a review is required when moving from 4.0.7 (5) to 4.0.8 (1), but no review will happen when going from 4.0.7 (5) to 4.0.7 (21).

Typical Process

  1. A new build gets uploaded to ASC.
  2. 5-15 min wait
  3. Apple is processing the build and it shows up as such at ASC > specific app > TF > Builds > iOS
  4. 10-30 min wait
  5. Apple has finished processing and the build automatically gets shared with all ASCU who get a notification on their devices (unless they have configured TF app to not present notifications). At this point the app can be manually[2] shared with any external testers at ASC > specific app > TF > specific group > Builds > + > some further steps. I think at this point you will be asked for an optional[3] step of describing what has changed. You will also be asked give credentials (prefilled with defaults) which I believe are (accessible) only for the TF review, not for beta testers of the apps. Correct me if I'm wrong.
  6. TF review, if applicable.
  7. 2-40 hour wait
  8. External testers receive the update on TF app OR if they are just signing up for this app on TF, then they will get an email from Apple.

How to set up TF for a new app

You can start adding people and making groups after the first build has been uploaded to ASC.

For [#External_Testers|external testers] there is the extra step of copying stuff over from a previous app at ASC > specific app > TF > Test Information. Most of our existing (newer) apps should only have the minimum required information at that page.

ASC Workflow optimizations

ASC sites are very slow to load (compared to other sites). When you want to multitask (e.g. do the same process on 5 different apps in parallel), you are forced to switch to each tab three times during the process. Once to give the address to navigate to and then a few seconds later, another time to wait until you see the spinning loading symbol, which indicates it is safe to switch to another tab. And eventually a third time to actually do the work. I really recommend using keyboard shortcuts to switch between tabs if you are working on more than 2 apps.

[1] Complicated stuff (also involving Fastlane).

[2] It will probably at some point get automated. At least those parts that are actually likely to occur more than twice.

[3] Technically mandatory, but you can always just put [q]No testing notes.[/q] or something like that. It would be great if this description is added, but too often the information about all the important bits that went into a new build get lost on the way here.