Important Test Cases For Mobile Applications

Mobile application development is gradually taking a front seat in software development. Mobile testing is day by day increasing its prospects. But still, testers have many questions regarding mobile testing like how to create test cases and test scenarios, how to use various mobile testing tools, etc. In this article, we will cater to test cases and test scenarios for mobile testing.
Below we have curated a list of sample test cases and test scenarios for various types of mobile testing.

Types of Test Cases

  • Performance Testing Test Cases
  • Functional Testing Test Cases
  • Compatibility Testing Test Cases
  • Security Testing Test Cases
  • Recoverability Testing Test Cases
  • Usability Testing Test Cases

Performance Testing Test Cases

Performance testing for the mobile application ensures that your application performs as required under certain performance requirements like a number of users, memory requirements, etc.
In performance testing, we largely need to have test cases for

  • Device performance
  • Server/API Performance
  • Network Performance

Your test cases should deal with the following aspects:

Device Performance:

  • Application start-up time
  • Memory consumption
  • Usage with other Applications
  • Battery Time while using the application
  • Hardware and Software variation
  • An application running in the background

Server/API Performance:

  • API calls generated
  • Data to and from the server.
  • Server downtime

Network Performance:

  • Network Speed
  • Packet Loss

Also Read: How to create Test cases For Android Application

Few test cases that you can conduct for performance testing are

  1. Test application performance under different load conditions.
  2. To test if the network coverage supports the application at various user levels.
  3. To test the application performance under prevailing client-server configuration setup.
  4. To detect infrastructure and application bottlenecks that hold back your application from working as expected.
  5. To test the response time.
  6. To evaluate the application for planned and unplanned load volumes.
  7. To evaluate battery time while using application
  8. To test application during network change from WIFI to 2G/3G/4G or vice versa.
  9. To test the memory leaks, Camera, battery consumption, resources like GPS.
  10. To test if the application works well when the device is being moved from one location to another.

Functional Testing Test Cases

In mobile testing functional testing generally deals with testing the user interactions and the transactions. When conducting functional testing, you have to consider a few scenarios

  1. Business functionality usage of your application like banking, gaming, social or business
  2. Target audience type like consumer, enterprise, education
  3. Distribution channel you would like your application to share Apple App Store, Google play, direct distribution

Based on your application and requirement you can have following test cases for your testing:

  1. To verify if the essential and non-essential fields can be easily identified and are displayed on the screen in a distinctive way.
  2. To test the essential fields for their proper working.
  3. To test that during an incoming call the application goes to minimized mode.
  4. To verify your application does not crop up any hindrance for other applications installed on the system.
  5. To test the application’s compatibility with required versions of the devices.
  6. To test the application for the proper working during starting and closing.
  7. To test your application supports required social network options such as posting, sharing, and navigation, etc.
  8. To test for truncation errors. Any truncation error should not harm your system and should be under a safe limit.
  9. To test for proper network error message during improper network connection.
  10. To test the smooth installation of the application provided all requirements are fulfilled.
  11. To test the auto-start facility based on the requirements.
  12. To test if the mobile is able to receive and store messages while your application is running.
  13. To test if your application does not hinder the multitasking capability of the device.
  14. To verify the required navigation among the related modules
  15. To test if application restarts at the same point after a system crash.
  16. To test the availability of the user guide.
  17. To test any payment gateway transaction support if required by the application.
  18. To test for required page scrolling scenarios.
  19. To test newly added functionalities or changes made to the code.

Compatibility Testing Test Cases

Compatibility testing is very important as markets are flooded with various kinds of mobile devices. Your application should be compatible with all these devices to reach wider customers. Compatibility tests your application compatibility with various mobile devices, OS, and a combination of both.
Some of the prominent test cases for compatibility testing are:

  1. To test user Interface of the application on various screen size.
  2. To test your application supports various mobile devices.
  3. Test application’s compatibility with various OS
  4. Test applications compatibility with a combination of different devices and different OS.
Security Testing Test Cases

In times of increasing cyber-crime, security testing is very important. It checks whether your application fulfills all the security requirements.
Below are some of the most important security testing test cases for mobile apps that can ensure better security of your application:

  1. To your application withstanding capabilities against brute force attack
  2. To test the application against buffer overflows and memory corruption cases.
  3. Test custom created files and test that they do not perform any malicious deeds.
  4. To test applications immunity against malicious runtime injections.
  5. To test the well-being of cryptography code.
  6. To test if your application supports a strong password protection system, and does not allow an unauthorized person to change password.
  7. To detect dynamic dependencies.
  8. To test security against SQL injection-related attacks.
  9. To detect and recuperate from unmanaged code scenarios.
  10. To test if certificates are verified and whether your application support Certificate Pinning.
  11. To test the application response from the denial of service attacks.
  12. To analyze data validation requirements.
  13. To test the business logic implementation is secured.
  14. To test file system interactions.
  15. To test the protocol handlers.
  16. To test applications immunity tonasty client-side injections.
  17. To test that keyboard cache is protected from apprehensive data storage.
  18. To test if regular audits for data protection analysis are supported.
  19. To test if your application goes through a proper authentication process before sharing sensitive information.
  20. To test your application is immune to insufficient session expiration.
  21. To inspect file caching.
  22. To test for cookies.
  23. To test whether session management is enabled to prevent unauthorized users to access unwanted information.
  24. To test different data streams.
Recoverability Testing Test Cases
  1. Test for Crash recovery
  2. Verify recovery state of the applicationafter unanticipated crash
  3. Test for Transaction interruptions.
  4. Verify application’s transaction handling capabilities during a power failure (i.e. Battery dies or sudden manual shutdown of the device)
  5. The application recoverability when the connection is suspended.

Usability Testing Test Cases

The usability testing tests whether your mobile application is easy for the users to use. The main objective of usability testing is to whether your application supports intuitive, easy-to-use, and industry-accepted interfaces.

  1. Test that the buttons on your application are of the required size.
  2. To test icons consistency with the application.
  3. To test for the colour coding of the buttons as per the requirements.
  4. To test for zoom- out and zoom-in facilities support in your application.
  5. To test the proper acceptance of keyboard input.
  6. To test the support for undoing an action within a time limit, when any wrong item is touched.
  7. To test no overloading of contextual menus.
  8. To test that the text is simple, readable and clearly visible to the users.
  9. To test for the apt font.
  10. To test that the users are prompted when they download a large amount of data not beneficial for the application performance.
  11. To verify the closing and reopening of application from various states.
  12. To test for language translation facility.
  13. To test the synchronization of application items as per the user actions.
  14. To ensure the availability of user manual for the ease of the users.

Usability is all in all a manual testing approach as only a human can understand the usability accepts and ease of using the application. We hope these test cases will help you with your mobile testing endeavor.