21 January 2021
The mobile app testing checklist. Don't forget about those 5 things when testing mobile applications
Unless you’re a member of indigenous peoples in voluntary isolation, you’ve definitely used a smartphone with a mobile application or two. Currently, there’s such a boom for mobile apps that their popularity cannot be underestimated. Social and messaging, banking, food delivery, shopping – almost every business wants a mobile app! Of course, we want them to work flawlessly and Roadrunner fast. But how to ensure that when there are several thousand models of mobile devices and various platforms in the world? To make it a bit easier, we’ve prepared this mobile app testing checklist.
Why do you need this mobile app testing checklist anyway?
What’s the most important thing to do before you release your mobile application to the world? Testing!
The mobile app testing allows determining the quality and condition of the application. As it usually happens in life, you will be surprised by a few factors that you might not have thought about. So it’s always a great idea to make sure your application is highly reliable. After all, you want it to be designed and delivered in accordance with various requirements, so it fulfils its tasks and makes the user satisfied.
The reliability of mobile applications is extremely important to our Quality Assurance team. This is why we decided to create this mobile app testing checklist with five not-so-obvious things that are worth paying attention to during the testing process. We’ve based them on our experience from real-life projects and the suggestions of the ISTQB syllabus.
💡 Read more:
Mobile application testing checklist:
1. Screen orientation
The number one on our mobile app testing checklist is screen orientation. The sensor built into the device can detect the change of the phone position from vertical to horizontal (so-called portrait and landscape) and vice versa. This often involves a significant change in the application layout which is super important to pay attention to in mobile app development.
Your app needs to appeal to two types of users: the ones that go into a berserk rage when their phone flips orientation (but for some reason don’t switch this feature off… 🤔) and the ones that switch between the two screen orientations all the time because of YouTube videos, Netflix films or countless mobile games.
How to test mobile applications as far as the rotation is concerned? It’s definitely not a one-off spin or tilt. Screen rotation mobile test should be based on a much larger number of such cycles because these transitions can affect not only the rendered content but also the state of some elements.
There are applications on the market that don’t support screen rotation, for aesthetic or functional reasons. However, if your application is to be both horizontal and vertical, you should check several times whether the rotation of the interface between the two along with other changes during the process doesn’t cause:
- the application to lose the entered data,
- the application to change its state,
- the data after saving not matching that displayed earlier.
2. Various ways of data input
The vast majority of mobile applications are based on a simple rule: data (text, photos, videos) is entered by users in some way, and then further processed through various activities. If your application belongs to this group, you should make sure during mobile app testing that it handles:
- the keyboard appearing with the appropriate layout when invoked,
- inputs accepting not only typed but also pasted content. It is worth checking out the autocomplete and autocorrect options while you’re on it,
- use of one and/or more fingers. The application should interpret appropriate gestures or commands and react accordingly. The typical commands include tap, double-tap, press and hold, multi-touch, swipe, pinch, etc.
- the phone camera. The camera used by the application should be able, if required, not only to take photos/videos but also to recognize barcodes or QR codes. In the case of devices with multiple front and rear cameras, the appropriate one should be launched by the application by default.
💡 Read more:
Some functions of the mobile application require access to specific functionalities of the device. If you want to add a cute selfie with your cat on Instagram, you need to let the app use the camera or photo gallery. Other typical accesses necessary for some applications are contacts or a microphone.
However, the lack of consent shouldn’t block your customers from using other functionalities of the application as a whole. The aforementioned Instagram should still allow users to view the photo feed or watch stories without crashing in any way.
💁 When testing permissions/accesses, you should take into account whether:
- limited or rejected access causes no errors in the normal operation of the application,
- the application requires only the justified permissions which are really necessary for its normal operation,
- rejecting some permissions while installing the application isn’t a cause for the application’s malfunctions.
4. Typical disruptions
Your app won’t be the only one that users will have on their devices. You should take into account that the rest of the mobile applications, especially while running in the background, may somehow affect the operation of the currently open and used ones. Here are some typical examples of disruptions:
- incoming calls,
- incoming messages (SMS, MMS and messaging apps),
- connecting the device for charging,
- automatic activation of the energy-saving mode,
- pop-ups and notifications.
💁 When testing mobile applications in these respects, you should check if:
- the listed disruptions have any negative impact on the behaviour of your application when the app keeps its correct state,
- after finishing the call and returning to the application, it still remains in its previous state,
- after receiving the message or opening the notification and returning to the application, it still remains in its previous state.
💡 Read more:
5. Various types of data connections
Most of the mobile devices in use today have multiple methods to connect to the mobile network, ranging from 2G to 5G. You can also use Wi-Fi or Bluetooth technology. And a huge chunk of mobile applications requires one of the aforementioned technologies to work. In short, users won’t be able to browse Instagram without an Internet connection.
💁 The mobile app testing in this regard requires you to answer a few questions:
- How does the app handle different types of connection? iOS has a built-in tool that allows simulating the type of connection. But you can use emulators or simulators as well.
- Does the app work properly when switching between different connection modes? This is very important when users leave their home WiFi and connect to their mobile internet as soon as they get out of reach.
- How does the application behave in airplane ✈ mode?
- Does the application show the information about poor or no connection and informs about the temporary offline activity?
💡 Read more:
Mobile tests that are easily forgotten? Not with our testing checklist!
As you can see, when testing mobile applications, you have to pay attention to so many things. It’s time-consuming and requires extensive knowledge from the tester. And all this while thinking about the target audience, the planned scope of the application and the base of devices 📱 that require meticulous testing.
We hope that you enjoyed our mobile app testing checklist of things that don’t necessarily come to mind. From work experience, we’ve noticed that the aforementioned points get omitted the most, especially by juniors. Follow the list and the applications coming out of your hands will definitely be of reliable quality. Good luck with your projects! 🍀
Develop beautiful and engaging mobile apps with React Native development ⚛📱
Our developers are proficient in creating apps in React Native. Supported by the thorough Quality Assurance department, they reach software excellence. After our team is done with it, your product won’t miss anything. Let’s talk!