Setting Your Mobile App For Beta Testing

Do it as early as possible! If you think you should wait until your app is pixel perfect to start releasing beta versions… Just don't…

If you want to be really agile, then you should reduce the time of each cycle of users feedback during your development phase.

That said, let's start now to understand a little bit more about the process until you release your app to beta testers. There is plenty of posts about this topic. I want leave here a little bit of my current setup.


iOS apps

For distributing iOS apps, even for beta testing it’s necessary an account in the Apple Developer Program. In my case, an organizational account was created and after that I was assigned to it as admin user.

Two files are very important in the process:
* Certificate (.p12)
* Provisioning Profile

The first one (certificate) is responsible for identifying you as an Apple developer. The second is specially important for beta testing without the need of publishing through Apple. The provisioning profile contains the list of devices allowed to install the app. This is the list of devices from your beta testers.

I currently use Bitrise as CI solution. Uploading these two files to my Bitrise account it's necessary so that Bitrise can build and sign the app on my behalf.

Android apps

Beta testing Android apps is a little bit less tedious. You need to generate a certificate and a keystore file (a container of multiple certificates). To create these artifacts either Android Studio or Xamarin Studio can be used.

As in the iOS project, it's also necessary to upload the keystore file to the Bitrise account, so that there is no need for manually signing the apk (Android app file) every time a commit/push of a new feature is done.


After that I let Bitrise notify my beta testers by e-mail. From the e-mail the user can immediately install and starting using my app.

From now on I can add more features and have users almost instantly giving feedback on them.