Turo Chris Kudlack Jul 19, 2022

Android UI Testing with Firebase

Article Summary

Turo's Android team hit a wall: their single-device test setup couldn't keep up with their growing UI test suite. Hours of wait time for a single test run wasn't going to cut it.

Chris Kudlack from Turo Engineering shares how they scaled their Android UI testing infrastructure by migrating from a local single-machine setup to Firebase Test Lab. The team had to figure out the TeamCity integration on their own since no documentation existed.

Key Takeaways

Critical Insight

By migrating to Firebase Test Lab with custom TeamCity integration, Turo transformed their Android testing from a sequential bottleneck into a parallelized system running on 35 machines simultaneously.

The article includes the actual gcloud command they use to configure device types, OS versions, and orientations for their test runs.

About This Article

Problem

Turo's Android team had no documentation on how to integrate Firebase Test Lab with TeamCity. They ended up spending time manually digging through Google Cloud documentation to figure it out.

Solution

Chris Kudlack's team wrote a bash script that automatically set up Firebase on TeamCity machines. This let them upload APKs and run tests across multiple devices and OS versions without manual steps.

Impact

With the gcloud command-line tool, they could customize tests by device type, orientation, and OS version like versions 19 and 23 or specific device models. This gave them much better control over their testing and broader coverage.