Consumer Mobile App
Mobile App: Stabilising Releases Before a Store Launch
Mobile App Development, Quality Assurance

Challenge
The app worked on the team's own phones and failed everywhere else: older OS versions, small screens, and unstable networks.
A store launch was coming up, and early testers kept reporting problems the developers couldn’t reproduce: layouts breaking on compact screens, sessions lost after a weak connection, crashes on OS versions nobody in the office still used. Store submissions were coming back over issues that should have been caught in testing.
Without a clear view of which devices mattered and no fixed routine for release builds, every version felt like a gamble. The team needed a dependable way to get from “it works for us” to a release they could stand behind.
Solution
We set up a device matrix for the flows that matter, automated the critical user paths, and added crash monitoring plus a release checklist for store submissions.
Built a device and OS matrix from the app’s real target audience rather than the phones on the team’s desks, and tested on real devices.
Automated UI tests for the critical paths — onboarding, sign-in and the core user flows — on both iOS and Android.
Tested behaviour on slow and interrupted connections, including what the app does when a request fails halfway through.
Added crash reporting, so every crash in test builds and in production arrives with the device and OS it happened on.
Wrote a release checklist covering store guidelines, permissions, metadata and a final regression pass on the matrix.
Results
Store submissions stopped bouncing back for avoidable issues, and every version now follows the same release routine.
Device-specific bugs are found in testing, not in store reviews.
Crashes come with enough context to reproduce and fix them quickly.
The team knows exactly what has to be checked before a build goes to the stores.
Technologies
Swift, Kotlin, automated UI tests, real-device testing
More case studies



