I joined my first company as a Mobile Manual Tester. Down the lane, I realized that there were always few sets of test scenarios that I am using regularly for testing various Mobile apps across domains (Insurance, BFS, Travel, Pharma, etc). I have tried to jot down those scenarios here and I hope it will help you with your testing.
Landscape & Portrait Modes: If the application supports both Landscape and Portrait mode, then it is necessary to test the entire app in landscape mode, as the chances of getting UI defects are much higher in landscape mode. But in actuality, the bulk of the testing is performed in Portrait mode only and the landscape mode is not tested properly, which ultimately leads to defects popping up in UAT. To make sure every test case is covered in both landscape and portrait mode, maintain an excel file for Test execution of both modes.
Low Internet Speeds: If the app requires internet connectivity, then we have to make sure that it works on low internet speed (like 2g). As we are slowly getting 3g, 4g, and 5g speeds, there are still many developing nations where 2g internet is used. So, it’s kind of mandatory, that apps must work flawlessly on low internet speeds as well.
Disabling App Permissions from App Manager: It is a Negative test scenario and let me tell you it has fetched me lots of defects. Say suppose, an app requires 3 permissions camera, calendar, and Gallery. During installation or post first app launch all the permissions have been given. Now we go to App Manager and disable any of these app permissions or all. And now we come back to the app and use the functionalities dependant on the permissions and in my case most of the time I got some or the other defects. So make sure you play around with app permissions.
Bulk Data for Reports and BackUp: If an app has Report or Backup functionality, do test it with bulk data. The best way to create test data, in this case, is to create some Automation scripts using Appium. Testing with fewer data will not fetch you any defects but with bulk data the chances of getting defects increases.
No Email Configured: Suppose an app has functionality in which it uses the device’s default email app, in that case, always check for the scenario in which there is no email configured on the device. Most of the time the application crashes if this condition is not handled in the code.
Measure App performance in a device with very little Free Space left: Run the application on a device which has very less free space available. It will highlight the gray areas in the app.
Multiple Actions at once for Hybrid App: Hybrid Mobile apps are usually slower than their Native counterparts because they are made up of HTML, CSS, and JS and uses Os’s web view to run. So execute scenarios that involve multiple events in a quick span of time. Eg. Suppose a screen has more than one button, then try to press all the buttons in quick successions; the idea is to trigger multiple events in succession before the previous events are completed. Many a time the app will get hanged or get crashed.
Push Notifications: Check for Push Notifications scenarios very carefully as it has become a common feature for all mobile apps nowadays. In addition to the test cases written, the following are the scenarios you should always verify:
- Push a Notification when the device is offline. Make sure that the notification is received on the device, once the device is online.
- Same Push notification is received on multiple devices(on which the app is installed) running different OS types and versions at once.
- When pushing multiple notifications in sequence, make sure that they are received in the same order.
- Check whether the push notification is received correctly or not for these three conditions: When the app is in the foreground, when the app is in the background and when the app is closed.
Finger Print Authentication for Apps: Fingerprint scanning is the next buzz in the Mobile world. Since this feature is directly connected with security, so the scope of testing should be more. I used to test this one negative scenario where I always found some defects. Eg. A fingerprint is already saved on the mobile device and we set the same fingerprint to the app; now delete the fingerprint from the phone’s memory; launch the app and verify the behavior with the same set of finger scan; that we deleted.
Maintaining an Excel file for Complex Calculations: For banking apps especially, there are lots of calculations involved based on the user input. So try to maintain an excel and apply necessary arithmetic formulas, so that when you make an input, it shows you the output instantly, which you can match with the app values.