Mobile testing: Most critical scenarios you shouldn’t miss to test
The owners and makers of web applications always try to carve up a section to represent their mobile applications in the footer tab like this on Myntra:
Or showcase it with lines that show that their app has much more to offer than their website like Uber:
And sometimes, dedicate a complete section on the top 25% screen of the website like Makemytrip:
Screen space is very valuable in a web application. Developers and business owners have to brainstorm about what they need to put, where they need to put and how important it is.
Websites devoting their spaces to sections especially to download their mobile apps denotes how important mobile applications are for businesses. In January 2022, BBC reported that 1/3rd of people’s waking time, around 4.8 hours, is being spent on mobile applications.
Another research supported this conclusion by providing data that depicts 90% of the total internet time of the users is spent on mobile apps. It’s not only about the time they were spending but also the money on it. People spent USD $170 billion through mobile applications only in 2021.
All the research points towards the importance of a mobile app. Therefore, as a developer and a tester, it becomes a highly responsible job to test these mobile applications and deliver the best quality. One small glitch means a loss in revenue and reputation for the business. However, we understand that if you are in this profession, you probably know all the basic test cases, scenarios and the holes where bugs can be found. This post does not cover them.
This post is about a few sections that need to be tested thoroughly as they are critical to the business. While the subsections will remain specific to the application, the following sections will help disclose corners that should not be avoided or ignored while testing a mobile application.
Security related scenarios in mobile testing
The first thing that we need to always keep in mind is the security of the application. An application contains a lot of confidential data which depends on the type of application you are building. For example, if you have a social media application, the app will have access to the status posting section or the section to upload photos, chats etc.
The security analysis of the mobile application completely depends on the application type and a standard blueprint is hard to develop. If your mobile app is some arcade game security testing is probably of a minimum priority. If your mobile app is a fintech application, it would require very high-security testing for even scenarios when a user is multi-tasking.
Apart from testing for breaches to the application, security testing also includes checking if the app is hackable and if any malware can be injected in the application or the device. You might also need to explore angles when a user wishes to access his data from other devices and the checks you have kept in place for such an action.
Performance related scenarios in mobile testing
After security, the next scenario that is critical for our mobile testing journey is the performance metric. Users, today, are more concerned about things like the battery drain rate of your app or how much hot the device gets when the app is running etc. With limited resources and a lot of mobile applications, users don’t shy from uninstalling the application simply because “ it was draining too much battery “.
This makes our performance-related scenario testing an important job and rejects the application in severe cases. These metrics may include (but are not restricted to) the following:
- How much CPU energy your application is taking and if there are any weird spikes in the graph. This is done to prevent the device from freezing up.
- How much GPU energy your application is taking. If the app is taking CPU and GPU both at a high rate, the mobile device is bound to get heated up in the execution.
- The rate at which the battery is draining while using the application. Battery drain and CPU/GPU usage is related to each other. A higher CPU cycle consumption denotes higher battery drainage.
Network related scenarios in mobile testing
A tester needs to always keep in mind that a mobile device does not stay in a single place like a desktop and is neither connected to superfast broadband networks such as optical fibres. A mobile device works on cellular networks (most of the time) and the network strength depends on the geographical area and the rate at which you are moving.
For a robust and reliable mobile application, it is extremely important to adjust according to the network. Such a scenario climbs up on priority depending on the type of mobile application you are testing. For heavier applications like games, social media or eCommerce users already have a lower expectations while they are on the move.
But with applications that provide content streaming, written content or cloud-based services like Google Drive or Onedrive, the user expects at least partial content to load up on the device. For streaming, expectations are generally for a low-quality stream but not a “Connection Error”. All these scenarios need to be tested.
Mobile screen size related test scenarios
Next comes the concerns related to the high fragmentation of mobile devices. The problem is that on which device your application will be rendered and what will be the screen size of it, no one knows and no one can guess. Therefore, as a tester, we need to be sure that the app will work without being impacted by the screen size of the device it is being used on.
The following image shows just a part of Samsung’s device sizes:
Cross-platform testing for native and hybrid mobile apps while cross-browser testing for mobile web and hybrid mobile apps is a good method to start. Screen size issues have always been a matter of concern and therefore a lot of companies have started their own device labs to help the testers. A similar approach is followed by Testsigma but with a twist in it. We’ll talk about it in more detail in the last section.
Marketing related scenarios in mobile testing
Even if it does not seem like an important thing, marketing-related functionalities are very important for the business. Consider a simple social media share button (let’s say for Facebook) not working. Even if this user has 200 or 300 friends, there could be a chance any one of them would share this link further. In such cases, publicity is done without any investments and efforts from the business. It becomes a responsibility, therefore, that everything related to marketing, etc. should work.
There can be other such scenarios apart from social media buttons such as iframe tag generation for videos, a shareable link generation, or providing a direct share option to the installed apps on the device.
Geolocation and localization related scenarios for mobile testing
Geolocation and localization provide a personalized experience to the user based on their geographical location. These can include suggestions for the restaurants nearby or distance metrics in maps or a simple text (like 30 km away) for apps creating connections through distance. With the use of geolocation features, localization can also be implemented — making sure that the application is loaded in a local language depending on the region for a smooth user experience.
But apart from the experience point of view, geolocation scenarios and testing play an important role in terms of security as well as legal matters. It makes sure that no local laws are broken and you show what is only allowed in the country (either by law or through copyrights etc.)
Missing geolocation testing can be dangerous legally, financially and of course, personally for the user and the business.
Pop up related scenarios in mobile testing
Popups are an attractive element in the application. They help the user see what’s new in the application or what offers are currently lined up for them. From my own personal experience, I have found popup very helpful as well as very annoying at times.
When the popup is not tested thoroughly on different devices and different screens, they show unusual behaviour on the device. For example, once a popup’s cross icon went out of the viewport while I was visiting the website. The developers had not designed the popup to disappear when a user clicks outside the region. The cross (close icon) was the only thing that could do that. The issue was not resolved even by restarting and reloading the app.
Similarly, once a popup went out of the viewport completely and the only thing on the screen was “faded out background”. Since the popup was not visible and was designed from corner to corner, it could not be closed.
As a tester, the related test scenarios should always be prioritized. No user would come back with such an experience and may even uninstall without even interacting with the application. This could lead to bad feedback and waste all the development time.
Fulfilling your testing requirements with Testsigma
Testing scenarios are one thing but to effectively test for every bug in your mobile app, you need a tool that helps facilitate the process and increases efficiency.
Testsigma is a test automation tool designed especially for speeding up the test automation process up to five times than usual.
With Testsigma you can automate all your end-to-end test scenarios for your mobile apps, including the ones that are
- Network related
- Screen size related
- Geolocation-localization related
- pop-up related
Testsigma uses English-based test scripts so that users do not need to find “ support for their programming language “ and miss out on great features. Hence, knowing English and being a good tester is just enough to use Testsigma in your next project.
Testsigma also comes with a mobile test recorder to make things even simpler than writing test cases. The recorder uploads and installs your mobile application on a real device of your choice (running on the OS of your choice). Once done, you can just interact with the application like a real user and Testsigma records each action (and input data) with test cases written in the English language. This process can also be done vice-versa.
Testsigma offers a wide variety of testing methods — all built into the cloud with secure infrastructure. You can perform data-driven testing, API testing, mobile app testing, cross-browser testing, and much more. If it feels like something of your type, test it out with a free sign-up.
Mobile testing has a lot of key test scenarios that are hard to discuss in a single post. Often with the aim to complete the mobile testing, we forget some test scenarios that are trickier and require additional effort from our side. In this post, we have to cover those. The test scenarios discussed are in addition to conventional testing methods such as unit testing, usability testing etc.
This post tried to explore those test scenarios that if missed, can prove to be very costly in terms of time, money, and reputation as well. However, it is also important to note that different applications have different priorities.
Some might require extra attention towards security while some might need to perform geolocation testing rigorously. With the seven most common (and important) scenarios, I tried to cover a wide range of applications. If you think some scenarios are missed, we would love to receive them in the comments and add them to the list.
Originally published at https://testsigma.com on April 13, 2022.