9 top mobile app testing tips
There are nearly 3 million mobile apps available now in the Apple App Store and Google Play — and the number continues to grow. With the sheer number of apps and the growing complexity of the mobile ecosystem, finding and creating loyal users for a new app is no easy task. Solving a real problem and delivering a great experience is essential for a successful mobile app. But even that won’t matter if the app you deliver to market is unstable and buggy.
Research has shown that one of the main reasons users uninstall apps just after downloading them is because of issues caused by bugs and lack of proper quality assurance. When users encounter problems — such as a phone that freezes, crashes, or quickly loses its charge — 44% of them delete the app right after installation and 96% of them write a bad review.
With that in mind, here are nine top app testing tips you should consider before you launch your app:
1. (Really) Test your target OS platforms and versions
It may sound obvious that your app testing starts with identifying the major OS platforms you are supporting (e.g. Android, iOS, Windows). But sometimes a hasty testing process might just call for using emulators that simulate those operating systems. Emulators don’t include all the features that different devices have. And often, some of these features cause the problems for the app. Make sure to test your app on the operating systems you need to support using the actual physical devices (e.g. phones and tablets). And remember, each operating system has more than one version available in the market. If your app is designed to work only on iOS 8 and later, you’ll still need to test for versions 8.0, 8.1, 8.2 and 8.3, etc — on real hardware.
2. Check the UI on different screen sizes
Designing for all the varying screen sizes — especially in the Android market — is a big challenge. The app has to perform consistently with all of them. If the user sees a screen with elements that don’t align — or worse, bleed off the page — there’s a good chance they will uninstall the app immediately. For this reason, you need to map all the models the app will support and test the app in each screen size on each device. If two different models have the same screen size, it’s not necessary to test the UI in both devices. For example: If the app supports both the iPhone 5 and iPhone 5s, a test of only one of them will suffice.
3. Perform app testing with different Internet speeds
The Internet speed can have a major impact on the experience of using an app. A user connected to a slow cellular network might have a hard time with apps that have rich media content. Make sure your app testing includes slow connections — and fast ones — to make sure the experience is OK at any speed. Tip: If some features of your app perform best over a WiFi connection, you might want to build in an alert to the user to let them know they are on a slow connection — so that they will understand when a faster connection provides the best experience.
4. Check what happens when you lose an Internet connection
Sometimes we have no bars. Cell signals drop. It happens. App testing should ensure there’s no problems when this happens. In particular, this can be an issue when it comes to completing forms or transactions. The app must be robust enough to finish the transaction or return a friendly message to the user, explaining what happened. For example: The user is signing up in the app and had filled all the required form fields. But when they tap “Complete,” the Internet connection is broken. If the app can’t finish the transaction, a friendly message should be displayed to the user explaining that the connection has been lost.
5. Monitor battery use
One study showed that 55% of users have experienced issues with apps that drained their phone battery charge more quickly than expected. For this reason, it’s important your app testing includes a look at battery consumption. iOS 8 comes with a feature that lists all the installed apps on your phone and the battery consumption of each of them. For Android apps, a widely-used tool for discovering how much power an app is using is an app called Battery Stats Plus.
6. Test how your app works with other phone features
Don’t forget that a mobile phone is still a phone — make sure that when your app is active, the phone you’re testing on still can receive phone calls and other system notifications. Also make sure that your app doesn’t cause problems for other apps and the phone when it’s running in a background state.
7. Make sure the app follows platform guidelines
Android, iOS and Windows all have various platform guidelines that include how to support various features and UX standards. If these guidelines aren’t followed, it’s possible that an app might fail or that using it will be frustrating. As an example, if you are developing an Android app and include a back button, it might conflict with Android’s built-in back button. But for that same app on iOS, you need a back button since the OS doesn’t already include it.
8. Do app testing with the full data load
Often times apps put through QA in a app testing environment don’t include the full data load they’ll experience in the production environment. For example, an app that’s slated to be released in 20 or more countries might just be pulling data from 2-3 countries in the test environment. If there’s a screen with multiple countries or languages listed, the app might call for a scroll bar — but if the test only includes a couple of languages, a missing scroll bar would go unnoticed. And from a pure data and speed point of view, less data in a test environment might lead you to believe the performance is great. But when it’s the full load in a production environment, you might find the app to be more sluggish than expected.
9. Understand and test for proper use of regional styles
Localizing an app for different languages is a big challenge. But there’s more to localizing an app than just the language. For example, date formats are different in various regions. In the U.S., the format for dates is “mm/dd/yyyy”, but in most regions it’s “dd/mm/yyyy”. Make sure to account for any regional differences in your app testing.
Don’t mess up the first chance to make an impression
In addition to these nine tips, we highly recommend mobile test automation with BDD (behavior-driven development) throughout a project, which will make QA at the end of a project much more efficient.
There’s always a big rush to get a first version of an app into the store and into the hands of your users. Of course, you can always make changes after an app is out. But if you neglect QA and an app doesn’t perform, negative reviews will make it hard to get more users — and you’ll lose users you may never get back.
You only get one chance to make a first impression.