Why is mobile app testing so important?
The emergence of mobile devices impacted our lives in unthinkable ways. It all started more than 40 years ago, and a lot has changed since that moment. The introduction of the first iPhone back in 2007 was a breakthrough moment in the mobile industry. Ever since, the market started growing and nowadays the mobile devices are present everywhere.
Trends and forecasts in the global mobile devices market
According to recent statistics, the global mobile app industry was worth $1.3 trillion in 2016 and it is expected to grow to $6.3 trillion by 2021. Other reports show that there are now over 5.15 billion people with mobile devices worldwide which means that 66.60% of the world's population has a mobile device.
Your smartphone is now a personal computer, camera, music station or game console in one device. Sure, you can still make a phone call with it, but who uses a smartphone that way these days? With the development of the Internet of Things (IoT) and other technologies like Augmented Reality (AR), Artificial Intelligence (AI) and Virtual Reality (VR), we think that this is only the beginning of what can be offered to a user.
Because of that, we found ourselves in the world of countless possibilities for mobile application development. Like always in such a case, it brings new changes, as well as new risks and challenges.
What is crucial for you as a mobile app user?
The user should be the main focus of all parties involved in mobile application development. Why? Because a user is responsible for the success or failure of the application. Every user will have different expectations. An application cannot only just “work” and do what it is supposed to do at first glance.
You have to ask yourself two important questions – who is the user and what does (s)he want? The first question is more connected to the specification of your application. There are many aspects that are very sensitive and difficult to assess, which will decide the final user’s level of satisfaction and happiness. Factors like gender, country, age, education, experience can make a difference in what is important to your users. But there are some aspects that seem to be important for every user group. This will help us answer the second question.
The keyword here is User Experience (UX). This is a collection of different quality aspects, such as performance, usability, and stability that shape the perception an end-user has of your mobile product or service. The users will not only want their problem solved; they also have extremely high standards for mobile applications. We should do our best to make their experience as positive as possible by tailoring the design specifically to them.
An average user checks his or her mobile device every six minutes and has around 40 apps installed. You can clearly see that there is a lot to win. However, it can be tricky because of all these really high expectations about usability, performance, and reliability.
Business users, on the other hand, seem to value quite different quality aspects. Surveys show that most important factors for business users are security, ownership of data, reliability & ease of use – in that order. Nevertheless, UX, remains a high priority target.
How important is UX in mobile development?
In general, mobile users have far higher expectations from mobile apps than of other software like browser apps. Most reports show that around 80% of users delete an app after using it for the first time! The main reasons for that are bad design, poor usability, slow loading time and multiple crashes right after installation.
Nearly 60% of users will delete an app that requires registration (“Hands-On Mobile App Testing” by Daniel Knott). Mobile app users are impatient – almost half of them expect an app to start in less than two seconds!
Users do not accept recurring problems with an app and are quick to abandon – the majority will only give a problem app three chances. Crashes, freezes or errors will make over half of the users delete the app. Over one third will remove it due to heavy battery usage.
Your users are not forgiving of mistakes – the mobile app and the company who created it are the ones to blame. 37% of users will devalue a company’s brand when a mobile app crashes or produces errors. Performance issues – even more. 55% will blame you, the producer of the app.
What’s the technical side of mobile testing?
Mobile devices move beyond being simple computers and there are a number of factors which should be considered while testing or better said, before you even start planning. Like computers, they have similar components (processors, memory, buttons) but are far more advanced and complicated in terms of how they are built and function.
Mobile devices have additional components – touchscreen, antennas, many different sensors, SIM card slots – all having an impact on installed applications. They must support network connections, receiving notification messages, transform and interpret information from sensors and communicate with other devices. Don’t forget about the power supply, battery usage and working with many applications opened at the same time.
These technical aspects are one thing but you also have to remember about a specific use case. First and most important, your application will be used on the move, under many different external conditions – on the top of the mountain or in the basement, on the lonely beach or during New Year’s Eve in the center of the capital city. You must predict and test all of these scenarios and combinations of different factors to ensure that users will continue to use your app on a regular basis.
The old mobile dilemma: iOs or Android?
There are 2 main operating systems on the market: Android supported by Google and iOS created by Apple. The market share of others is marginal. Android has a clear lead over iOS in terms of market share with over 86% in 2018 and this trend is growing.
There are 16 different versions of Android, depending on the hardware manufacturer. The reason is that the Android Open Source Project gives device manufacturers a lot of leeway in creating customized features that will attract users (this is contrary to iOS, which is under Apple’s control). Adding to that the fact that there are 4-24 thousand different models of Android devices in use, the number of possible combinations is just extraordinary.
This phenomenon has a special name, Mobile Device Fragmentation, and it has a great impact on the complexity of testing. Deciding which devices/systems to test is not an easy task. Knowing devices and systems is crucial for a tester to be able to differentiate between errors made by applications and those caused by the device or system itself.
I hope that this short introduction gave you an impression of how complex the process of testing a mobile app can be. How to do that in practice – what to consider, how to limit the scope wisely, which devices to use, which tools to choose, whether automation is advisable or not – these are just a few of the many questions to ask as a next step.
Let's talk about how we can help you make those steps, together.