Hello, Bitrise!

bitrise deployment
Guest post by: Barnabas Birmacher
Distributing your apps through TestFairy is great as always! Reaching your testers instantly and gathering valuable feedback and usage information is the best way to make awesome applications.
To make sure you keep deploying quality products you should use Continuous Integration and Delivery.
Continuous Integration is a practice where you push all your app’s code changes into a shared repository multiple times a day. Each integration should be verified by an automatic build, so you are going to be notified early about the problems and you can locate them quickly. Continuous Delivery works well with Continuous Integration – it means that you deploy every build to production every time a build passes the automated tests.

Bitrise

Working with unit tests and multiple daily deployments can give you a huge benefit but dealing with it manually also takes up a lot of time. Soon you will realise you are doing a lot more administrative tasks besides the actual development.
We, at Bitrise, are on a mission to bring back the joy of app development by automating all of these processes for you. We’ve also integrated TestFairy into Bitrise so every time you update your code we’ll deploy your app automatically to your favorite deployment service.

How to get started?

After you have connected your application to Bitrise you can change your own workflow on your application page and start customising it for your own needs.
To be able to deploy your application you are going to need an Xcode Archive step (that should be already added to your workflow).
To deploy your app to TestFairy, simply add a new TestFairy step after Xcode Archive and after every successful build we are going to deploy your application automatically.
workflow-editor

(click image for full size)

The only required parameter you have to add is your TestFairy API Key. To get it you should navigate to your account preferences on TestFairy and find the key under the API Key menu.
You can also enable or disable the email notifications and set the tester groups you would like to notify. There’s an option to make your users upgrade to the latest build by enabling Auto update in the step. You can also start recording video and set the length of it.

What’s next?

We have more than 20 different integrations you can choose from. Update your build workflow by adding connections with different services like Slack or HipChat to notify your team about broken builds or successful deployments.
And that is all! Just work on your awesome app and we’ll make sure it deploys to TestFairy every time you update your code!
Happy building!
The Bitrise Team

TestFairy Webhooks Are Here!

webhooks
Webhooks are a cross-server callbacks. A “let me know when something happened” deal. With TestFairy’s webhooks, you can connect our leading app distribution, monitoring and feedback with your own backend within minutes.
TestFairy sends an HTTP POST request with a JSON when a predefined set of criteria has been met. For example, you can configure these:

  • Let me know when a tester has downloaded my app. I want to know their email and the referrer
  • Let me know when my app crashed, and send the stack trace, so I can notify the right developer
  • Let me know when a feedback has been received, I want to manage priorities
  • Let me know when my CI finished uploading a new build, I want to update my ad campaign with the new link

As each scenario is tailor-suited for your needs, webhooks open a wide range of possibilities for integration between our systems.

Payload

TestFairy sends every bit of information you might need for processing the callback. Let’s consider this sample Payload:

{
    "event": "feedback",
    "timestamp": "2015-07-01 17:21:00",
    "version": "1.0",
    "build": 1,
    "appName": "Demo App",
    "filesize": 563876,
    "buildUrl": "https://app.testfairy.com/projects/10-demoapp/builds/584120",
    "iconUrl": "https://testfairy.s3.amazonaws.com/icons/4/68348e8d8265771d64636e2d57bb9a672f812e1a.png",
    "email": "alice@corporation.com",
    "rawDeviceName": "samsung gt-i9100t",
    "ipAddress": "54.227.255.225",
    "text": "App doesn't render nicely in landscape"
}

Every callback includes “event” field and basic information about the build involved. For complete information about payloads for each event, please refer to the TestFairy Webhooks Documentation.

Seamless Integration

TestFairy’s webhooks automatically recognize Slack and HipChat by their URLs. Setting up a 3rd-party Incoming Webhook URL as TestFairy’s outgoing URL, will post the payloads specifically formatted for the target platform.
Here’s a nice screenshot of Slack with TestFairy webhook:

Installation

Here is what you need to do:
1. Open up your preferences page by clicking Account -> Preferences
2. Select Webhooks tab from the left sidebar.
3. Click on “+ New Webhook” to create a new integration.
4. Supply Name and URL. You can test if the integration works by clicking the Test button.
5. Additional fields specify event triggers and selected projects.
6. Click “Save” and you’re done!

Additional Resources

The Complete TestFairy Webhooks Documentation

Android Studio Integration

TestFairy Android Studio
Deployment and distribution via TestFairy has been ever easier! With the plugin installed in your development editor, you can now upload builds directly to TestFairy with a single click. This plugin is supported by all modern Android Studio and IntelliJ IDEA editors.

Installation

Start the stopwatch! Here’s how to install the TestFairy plugin within 60 seconds or less:

  • Open the Preferences page in your IDE
  • Select Plugins from the sidebar, and then click Browse Repositories…
  • Type “TestFairy” in the search field at the top
  • Click “Install Plugin” in the right sidebar. You will be prompted to restart your editor

install-testfairy-plugin
Simple, eh?
Android Studio deploy icon
When it’s all done, you will see an icon with TestFairy’s droid. This is your new buddy, a single click will deploy your APKs.
For further reading and information about manual installation, please refer to the documentation.

App Responsiveness

First-of-its-kind Solution for Slow App Detection to be Launched by TestFairy at Google I/O
San Francisco, May 28th, 2015: TestFairy, the provider of the video-enabled beta testing platform for mobile apps, announced today a new service, a first of its kind, allowing mobile developers to understand when their apps are slow to respond.
TestFairy will demonstrate its new service at Google I/O 2015, an annual conference featuring inspirational talks, which gives developers a chance to hear more about Google’s latest developer products. Google selected TestFairy to present at Google I/O as one of the startups participating in its Launchpad program.
“App Responsiveness is a score given to the speed-ness of apps, indicating how fast they respond to user interface (UI) events,” Explained Gil Megidish, TestFairy Co-Founder & CTO. “Every time a user touches an on-screen button or scrolls down a list, the operating system pushes events into the main thread’s queue. Before the screen updates, this message queue must clear. Very often, app developers perform processing on the same main thread. This results in slugginess of the application and frustration of the user, as the app does not respond fast enough and seems slow and unreliable. TestFairy measures how slow your main thread is and, if a piece of code blocks it from processing user-interaction events, TestFairy will alert and provide the complete stack trace of the faulty code. These bugs are hard to trace as they may be caused by a bad network connection or long items in a list.”
TestFairy is the first company to provide a solution to this problem, as part of its mobile beta testing platform.
The TestFairy platform helps mobile developers by providing videos that show exactly what happened on their apps while being tested. In addition to videos, the service provides deep analysis data such as CPU usage, memory allocations, phone signal and wifi stats, along with logs and symbolicated crash reports. By providing developers with more information regarding bugs, TestFairy helps them fix bugs faster and cut the costs of testing and development.
The service is available for iOS and Android and will be available for Windows Phone later this year.
TestFairy, founded in 2013, was selected by many developers as the perfect TestFlight replacement, allowing mobile developers to efficiently test their apps. The company recently announced full compatibility with Xamarin Insights and Adobe Air. Developers on these platforms can now experience many improvements to their mobile app testing.
For more information please visit www.testfairy.com