Okay, so you’ve decided to build a top-notch Android app. Great! The Android market is constantly growing, although it’s not easy to find success there. The first problem that you will face even before going to the market with your product is… testing. Which is an extremely difficult process, as the Android market is awfully fragmented. How to approach this and not fail even before your product’s debut on Google Play? Read our short guide on how to efficiently test and debug your Android application.
At Netguru we’ve been creating and testing applications for almost 10 years now. What we’ve learned over this time is that a successful quality assurance process for an Android app takes you halfway through to success. Of course you won’t test your product on every single Android phone ever. But you definitely should do some testing on real devices before your app reaches customers. This will allow you to focus on how exactly your application works in a real-time environment and solve existing issues. So where do you begin?
First of all, give up hope that your app will work perfectly on ALL Android devices. At the beginning of providing the quality assurance testing process for your app you should tame your expectations. The first thing you have to do is to establish a working process of creating tickets and solving bugs.
Start by choosing a number of reference devices which are the most popular among your target demographic, geography, age and money wise. This approach will guarantee that you will have the best possible market coverage. For example, when you test an app which will be used mainly in China, Xiaomi devices should be among your reference tools.
When you want to test an application for the European market, you should probably chose Samsung, LG or Sony. By choosing the most popular brands as your reference devices, you increase the possibility of getting the best possible coverage. There are many online sites that specialize in creating reports about most popular devices in given regions. Use them.
Some of the most important things to consider while testing your Android app are its target group, real life use cases and social practices.
Real people together with their everyday habits, challenges and problems, will be the ultimate testing group of your app. Create their personas, research and describe the way in which, in your opinion, they will use your application day-to-day. Next, create a testing process which includes this information.
For example, while testing an app designed for teenagers, you should make sure it works perfectly offline, because it’s possible that youngsters often "save" data transfer as their data plans don’t allow them to use 3G internet carelessly. In this case you should also check whether the app addresses situations where users frequently switch between on- and offline as it will probably be the most popular use case among the youth. Another useful tip is to focus on tests using the weakest devices among your chosen testing tools. It’s a general rule that better devices don’t experience the problems that might pop up on weaker ones, but it’s especially applicable to young people with cheaper phones.
Another case is an app for fitness tracking, where potential users are frequently on the move. During such activity devices lose GPS and data signal frequently, so make sure you cover such cases well while designing the app architecture and testing procedures.
Make sure to check how much battery power your app will eat up. A good case to consider is travel. Test how well your app deals with losing signal periodically or going offline, if these functions are important for your product. You don’t want someone to end up stranded without a working phone in a foreign country because of your app.
Market names of your devices may be misleading so check carefully what you use for testing.
Keep in mind, that even if you have a few devices with same commercial names, let’s say Samsung Galaxy, they still might have different key components in particular markets that might behave differently. We had issues with apps crashing on two identical phones - branding wise - but with slight chipset differences. These can really hurt you, as you will be chasing ghosts, which is quite a frustrating endeavour.
It’s crucial to pay close attention to brands in general. For example, Samsung has a different file storage strategy than HTC. This might seem unimportant, but it can actually cause your app to misbehave on some devices. When the market is so saturated and user experience can make or break your product, you probably want to keep this in mind.
You will also have to decide whether your app is to be tested on tablets. Your quality assurance process should include testing on various kinds of screens: to check whether the app looks good on bigger screens and if it doesn’t cut out some elements on smaller ones. In this case you will have to take into account that the Android tablet market in the US consists mainly of Amazon and not Google products, which makes things even more difficult. At the same time, in China, Xiaomi is the market leader.
If there are too many users using your app at the same time, the backend of your app may fail. Define the purpose of the first release of the application, then validate business goals and bring profits. You have to decide whether your MVP will have few bigger features or whether it will be a robust top-end product full of big features which will be extremely difficult to test. If you want your app to work properly, you have two options: cut down some of the features or invest more in your quality assurance process.
When your app is ready and available for downloading, keep observing it in Google Analytics and Crash Analytics. See what users are doing with it, analyse, follow requests and constantly make adjustments. Also learn more about platform issues and try to support those platforms on which there is the largest number of users. This will enable you to make sure the most popular features work properly for the biggest possible number of people.
Hopefully you’re now fully aware of the complexity and importance of the quality assurance process - but not scared of attempting it. At Netguru, our knowledge comes from many years of experience and it’s only natural that a newly introduced process will need to have a few kinks ironed out. Just keep in mind the advice gathered in this article - pick the right devices to test with, while remembering that the same brand of phone may use different components depending on its market, have a good understanding of your target demographic, decide where to allocate resources to make sure your app will run at optimal capacity at any given time and don’t forget to keep the QA process up post-launch.