Apple's TestFlight can be used to perform user testing of Ionic applications and to gather user feedback. When TestFlight is used in combination with Ionic Appflow Live Update code updates can be delivered to the testers throughout the testing cycle.
Using this user testing strategy involves the following steps:
- create an initial native build of the application
- upload the application to the AppStore for use with TestFlight
A new build will only need to be uploaded to the AppStore if native layer changes are made or if the 90 day testing period expires.
To use Xcode, you must have a Mac computer.
In order to complete these steps, you will need to have a Distribution Provisioning Profile associated with your app's bundle ID. That Provisioning Profile will need to be associated with a valid Production Certificate that you have access to use. Before continuing, please make sure you have all that properly configured and that your Apple Developer user has the required roles in order to perform the required operations.
- Create an Ionic application and link it with Ionic Appflow
- Add the iOS platform to the application.
- For Capacitor this step is "ionic cap add ios". With Capacitor be sure to update the bundle ID file in the following locations: /ios/App/App.xcodeproj/project.pbxproj (2 occurrences), /ios/App/App/capacitor.config.json, /capacitor.config.json.
- For Cordova this step is "ionic cordova platform add ios". With Cordova be sure to update the "config.xml" file, especially the "widget/id" which will become the app's bundle ID.
- Build out the application, and when ready perform an "ionic build"
- Open the application in Xcode (ex: "open platforms/ios/MyApp.xcworkspace")
- Follow Apple's steps for Distributing an app using TestFlight. Note that in some cases the Ionic and Cordova build processes have already performed certain actions such as setting the "Bundle ID" based on data in your "config.xml" file. Key points in the steps are:
- Signing: If automatic signing cannot be used, manually sign the app using a valid Production Certificate and an associated Distribution Provisioning Profile
- Select "Generic iOS Device" in the Scheme toolbar menu on the main window of Xcode
- Select Project -> Archive from the Xcode menu, this should open the archive window
- Add the app in iTunes Connect
- From the Xcode Archive window, validate the archive
- Press the "Upload to AppStore..." button
- Note: You can also use the Transporter application to upload your IPA files from Ionic Appflow's Package service to App Store Connect. For details, see this post.
- Once the upload completes, open the app in iTunes connect to add internal and external testers and fill out the information for beta-test review
Testing the App and Deploying Changes
At this point, internal testers should be able to download your application via TestFlight. External users must wait until Apple approves the app for beta-testing. Changes to the Ionic application can now be pushed to Ionic Appflow and distributed to testers using Appflow's Live Update feature by pushing the code to Ionic Appflow and deploying the resulting build to the channel that is being used by the test app.
If you would like more in-depth help with the full development cycle of your application including user testing, please contact our Enterprise Customer Success team. Our experts can provide hands-on and highly customized training and advisory services to get you started and keep your project on track. We also offer guaranteed SLAs for peace of mind that your apps will stay up and running. Learn more by visiting our Ionic for Enterprise page.