Android Performance Analysis

Android performance testing launches your app on real, physical devices using Emerge's testing suite, allowing you to detect cold startup performance regressions for any PR before it's merged.

How it works

Each time a new release build of your AAB is uploaded to Emerge, it's run on a real, physical device in the cloud, along with the version it's being compared against (the app referenced from the specified baseSha).

Your app and the comparison app are launched numerous times on the same device in a randomized order, clearing the app and killing the process in between runs to preserve a consistent, cold-start state. While running each iteration, we record various performance metrics in addition to every function call in your startup path.

Integration

Performance testing only works with release, non-debuggable AAB uploads. Please contact your Emerge representative if you wish to run performance testing on APKs.

Startup testing

No developer setup is required!

Emerge records startup times by default from the start of your app's process to the end of the first frame rendering. This is referred to as time to initial display in the official Android documentation and is Emerge's default startup time metric.

We can enable startup regression testing on any upload to Emerge, get in touch with our team to try it out!

Marking custom startup end times

While the first frame (time to initial display) is the standard metric for default cold start time, Emerge can also record and catch regressions in time to full display, to a custom end time using reportFullyDrawn.

Place a call to this anywhere in your startup path once your application has finished fully loading. This will usually be called from your main activity, once all layout & rendering logic has completed.

Custom setup scenarios

Interested in performance testing custom scenarios such as logged-in/out or any custom flow? We're actively onboarding key partners. Get in touch with our team!

Custom UI tests

We're actively onboarding key partners to pilot Emerge's general UI testing SDK, leveraging UI automator. Get in touch with our team to try it out!


What’s Next

Understand how to view performance testing results: