Top Tips for Testing Android Apps

Posted in: Quality assurance testing, Usability testing by: Simon on:

Testing android apps

The Android Apps marketplace is the ‘wild wild west’ of the mobile world. For app developers, this presents unique challenges as well as opportunities. Fragmentation has been a major hurdle with Androids from the beginning, but it’s not the only thing to look out for when testing apps for these devices.

Stability Across a Range of Devices

In a perfect world, you’d have enough time to thoroughly test your app on every device and OS version available. However, with thousands of different devices currently running any of the Android OS versions, this simply isn’t possible. Instead, testing teams have to come up with a strategy that effectively leverages their time and resources on the fragmented Android device market.

Your approach will depend on time, budget and human resources, and can incorporate a combination of automated, manual and crowdsourced testing, on both emulated and live devices. Manual testing, which is your most limited resource, should be focused on the most popular device and OS combinations in your target market. For older and more obscure devices, automated sanity testing and a quick manual check may suffice.

Interrupts

Outside of a stable testing environment, apps are subject to all manner of interruptions on a day-to-day basis. Phone calls, text messages, and other disruptions can all have an affect on how your app operates. Your test plans should include adequate coverage of various interrupts, including incoming phone calls and texts, notifications from other apps running in the background, automatic updates and unexpected shutdowns. Make sure your Android apps save data appropriately, opens and re-opens seamlessly and is robust enough to handle multiple interrupts within a short time span.

Battery Life and Data Consumption

Apps that drain more than their fair share of battery life and/or data are a common complaint among device owners. Monitor how your Android apps perform at the full, medium and low charge. Keep in mind that most users expect to charge their device no more than once a day. Most apps should also allow devices to go into sleep mode to reduce overall battery consumption.

android apps

Android’s built-in battery usage screen can come in handy during testing (Image Source: http://www.howtogeek.com/)

On that same note, keep an eye on data usage throughout your team’s testing activities. Companies such as Verizon have actually come up with a rating system for data usage in apps, and awards five stars to apps that consume fewer than 10MB per month when running in background open (i.e., open but not in use). While there are no set rules when it comes to data usage, 10MB is a good benchmark to strive for.

The Android Interface

Android devices offer more interface options than Apple smartphones and tablets. While iPhones and iPads feature a single ‘home’ button, Android devices typically have four buttons: home, back, menu, and search. The latter three buttons can either affect the app or the whole device. Verify in testing that each button works as intended within your Android apps.

Another common problem area for Android apps is the keyboard. Verify that the onscreen keyboard does not hinder the use of your application or block any important information. Test Android’s built-in copy-and-paste feature to ensure it doesn’t interfere with the functionality of your application or the user interface. Android apps intended for worldwide release should also be able to display and process special characters.

Real World Testing

With so many variables to consider with Android devices, no amount of ‘in-the-lab’ or emulation testing can ever replace hands-on, real world testing. This requires you to step into the shoes of a user and scrutinize everything, from the initial installation of the app to everyday use. Real world testing doesn’t fit nicely into any particular category, but it is the most effective way to flag some of the more intangible issues that appear in Android apps.

The Android landscape presents a lot of opportunity for companies of all shapes and sizes. Though the market may be crowded, the easiest way to stand out is to produce a high-quality, easy-to-use app. In addition to standard testing practices, pay attention to Android’s unique quirks and requirements to deliver an app that rises above the rest.

ABOUT THE AUTHOR:

Simon

Simon is the founder of Crowdsourced Testing. After 10 years in interactive software development, he set his sights on building a world-class crowdsourcing platform to facilitate the software testing process for developers.