Wednesday, March 9, 2016

iOS Test Fairy



What is TestFairy?

TestFairy is a free platform used to distribute beta and internal iOS and Android applications to team members over-the-air.

What do we use it for?

Distributing our apps. Specifically, distributing test versions to QA and customers.

Why TestFairy?

  • TestFlightApp.com is shutting down on February 26th, 2015
  • It is supported iOS Ad Hoc Certificate and iOS Enterprise Certificate
  • Sending app to tester is easy. You can specify group of testers to which you can send new builds.
  • We can use it without integrating TestFairy SDK (No changes in the app code)
  • Easy integration into GG Toolchain
  • Supports all versions of iOS

Restrictions and workarounds

There are different membership types in TestFairy. In GG we'll try to use the Free membership whenever that's possible. The 2 main restrictions we have with the free membership are:
  • You can only upload 2 different apps
    • Because we can only upload 2 different apps, we will have a different TestFairy account for each app we want to upload.
    • Ask operations to create a new email distribution list for each project (e.g: addisonlee_ios@goldengekko.com) that can be used to create a TestFairy account from which the app will be distributed. All members of the iOS Team for that project should be included in this distribution list.
    • The Android team is working this way and they are not having any problem.
  • You can only invite 100 Testers
    • Please don't get confused, the limit is 100 Testers, not 100 Devices.
    • For projects that need to be shared with more than 100 testers, we will ask operations to create a new email distribution list for that project (e.g: addisonlee_testers@goldengekko.com). This account will be the one that the app will be shared with and every member of the distribution list will get an email with the download link each time a new version is uploaded and notified. Email addresses of all the testers for that project should be included in this distribution list.
    • This TestFairy account credentials must be shared with all the testers so they can login to TestFairy and download the app.
    • Of course, this type of projects should be signed using an Enterprise Account that has no limit on the number of devices the app can be installed on. 

Setting up a Testers Group

Once you have created the TestFairy account for your project, go to the Testers section, and invite testers via email. You can add them to a group by typing in the group box next to their name, and selecting a group for them to join from the drop down options (you can create a group for the first time, by selecting "Create new group" from the drop down).


Migrating from Testflight to TestFairy

In TestFairy is possible to import testers and devices UDIDs from TestFlight. Using this tool, you can easily and quickly export all of your data and keep it safe. It only takes a moment.
  • In the TestFairy console, go to TestFlight Import on Top of Menu them fill in your TestFlight Username & Password and click Export Teams & Devices

  • After you export successfully, you will get list of testers and groups in your TestFlight in TestFairy testers.

Inviting a tester to a specific project

You can invite some your testers to see only some projects in your TestFairy account.
  • Login and Go to you dashboard

  • Select an App and choose the version to which you want to invite the tester

  • Click on Distribution > Invite testers by Email
  
  • You can invite the tester(s) by writing their email addresses or by choosing the group of testers previously created. Click on "Invite Selected Testers" and only these testers will see this app and version.

Integrating TestFairy into the GG Toolchain

In order to integrate TestFairy with your distribution process, you will need:
  • TestFairy API key
    • Go to Account / Settings and find your Upload API Key.
    • Add this key to YourBuild file. 


References

For more detailed documentation about TestFairy API and SDK please visit http://docs.testfairy.com