The right Test Cases for Mobile Applications have to be chosen while testing the app. It should be based on the requirement, target audience, user persona, and many other details. Writing the right test cases for mobile app testing will ensure the effective functioning of various features of the mobile app. Before getting into test cases, let’s have a dear distinction between test scenarios and test cases.
What is a Test Scenario?
Test Scenario is a high-level functionality use case that’s often written based on user persona. One test scenario is mostly intended for a single functionality. Writing test scenarios helps in checking the crucial functionality of the system. Once you have developed test scenarios it will be easy to write test cases. Test scenarios also help in aligning the flow of the application with the actual business flow.
Example for Test Scenario
Check the login functionality
Here the scenario is to check the login functionality of an app based on the scenario we have to write test cases such as
- System behavior at the time of right credentials
- System behavior at the time of wrong credentials
- Combination of both valid and invalid credentials
- Observe system behavior when partial information is entered in the login screen
- Check the working of forgot password
- 2-way authentication functionality check
- Keep-me-signed in functionality check
What’s a Test Case?
Before we jump into important test cases for mobile applications, let’s get a basic idea about what exactly it is with an example Test case is a detailed step-by-step description used to validate functionality of software or system. The main parts of a test case include,
- Preconditions that have to be met in progressing from one step to another
- Step-by-step instruction about executing every step
- The expected result of a certain functionality
- The actual result that comes after the test execution
PS: If the expected result is as same as that of the actual result it’s marked as pass and if it’s otherwise it will be marked as it’s failed.
Types of Test Cases
Formal test cases: In these types of test cases all the prerequisites and test information must be readily available for execution Informal test cases: This type of test case might not have any input or output. Execution of this type of test case is mostly done to examine the results or when randomness is in dire need.
Types of results that are listed after the test case execution
- Pass – The test has been accomplished
- Fail – The test couldn’t complete
- not executed – The test case is not executed owing to various reasons
- Blocked – Certain conditions or factors are preventing the test from execution
Difference between Test Case and Test Scenario
|Test Case||Test Scenario|
|Detailed information||One line information|
|Can be used for validation of test output||Contains a thread of operation|
|Focus is on how to test||Focus will be on what to test|
|Test case helps in tracking the test coverage||Helps in deriving good test cases|
|Creating test cases requires a great deal of time||Consumes a lot of time|
|Helps in exhaustive testing||Agile approach|
Important Test Cases for Mobile Application
Functional Test cases of a mobile application
- Check if the app is able to start and stop and behaves as per the requirement
- Behavior of the app in the background
- The behavior of the app at the time of interruptions such as phone calls, notifications, etc.
- Scroll functionality, to check the smoothness of the page while scrolling
- Check whether the auto-logout functionality is working as per the requirement
- Page navigation to see if there is a proper flow and it’s not making the user confused
- Validation of fields across the app ( functionality and arrangement)
- Check whether the app can fulfill the multi-tasking requirement
- Check for truncation errors and see if it’s crossing the allowed limit
- Check for malicious code injection
- Check for social media sharing options
- Check the working of third-party integrations
- Check for appropriate error messages at various scenarios
- Check for memory and battery consumption
- Check whether the app is interrupting the functioning of other active apps in the background
Network related test cases for mobile application
- Inspect the app behavior when connected to networks of varied strength such as 2G, 3G 4G, etc.
- Check the app behavior when connected to WIFi. Also, check for authentication flaws.
- Check for packet loss between the source and the destination
- Check for latency
- Verify the app behavior when the network can be barely reached or is out of reach
- Check how the app is behaving once it’s been restarted
Performance test cases for mobile applications
- Will the app be able to handle the proposed load?
- With the help of performance metrics check for performance bottlenecks
- Check for the app as well as server response time
- Check the app performance concerning various network strength irregularities
- Check for memory usage, leaks, CPU performance, camera performance, etc.
- How the app is performing during the intermittent connectivity phase
- How various client-server configuration is affecting the app behavior
Usability test cases for mobile application
- Ensure that the buttons and fields are of the right size
- Check the navigation process and ensure its simple
- Ensure consistent placement of natural icons
- Ensure the right placement of the buttons
- Zoom-in and zoom-out feature
- Text visibility
- Ensure the right content across the app
- Make sure that the menu is easy and discoverable
- Keyboard minimization and maximization
- Ensure the right placement and size of the icons
Battery usage test cases for mobile applications
- Check the overall energy consumption fo the app
- Check for the battery performance when the system is under heavy load
- When the battery is low and the app is at high load
- Intense and low graphic settings and its impact on battery consumption
- Battery usage leak
- New features and its impact on battery usage
Compatibility test cases for mobile application
- Test you app on latest mobile devices and OS versions
- Check for backward compatibility
- Check how the app is performing on older devices
- If the app requires a web browser, how it will perform on various browsers and its older versions
- UI ( user interface) stability across various devices and OS versions
- Check the app performance with respect to various configurations
- Readability of the text across various devices and OS versions
Security testing test cases for mobile applications
- How the app is performing against brute force?
- If the attacker has breached the app, will he/she/them be able to access sensitive data of the customers?
- How the app security defenses are acting against malicious injections both client-side and run time?
- Security position of the third-party integrations
- Does the app have a strong password protection system?
- Check the session expiry time of the app
- Check for broken cryptography inside
- Check the dynamic dependencies of the app
- Check how well the security defenses can keep up with SQL attacks
- Check the malicious file caching
- Check the file interaction and related vulnerabilities
- Perform data protection analysis
- Check the session management system
- Check whether the system has what it takes to prevent memory corruption
- Check for data stream vulnerabilities
- Check if the business logic of the app has any security vulnerabilities
- Analyze the storage and validation mechanism of the app
- Check for unmanaged code scenarios
- Check the communication line between backend and frontend and make sure that the line is devoid of security flaws.
Regression Testing test cases for mobile applications
- Check how the new code changes (functionality) is affecting the app
- Check whether the new functionality is mutating the app
- Check the existing functionality is in sync with the requirement
Localization Test cases for mobile applications
- Check for content accuracy
- Check for proper error notification messages
- Check for appropriateness and relevancy of the content
- Time and date
- Make sure that the language is properly formatted
- Ensure that the content layout of the app is error-free
- Ensure appropriate color across the app
- Ensure that the entire UI elements of the app are isolated
- Ensure that the static UI elements of the app are in sync with the application UI
- Make sure that the connection between functionality strings of the app is well connected.
- Make sure that the text length is not causing text clipping owing to pseudo localization.
- Ensure that certain font properties cannot be changed
- Certain things about the app such as DLLs, IRIs, etc. should not be able to be localized
- Check for text alignment, mirroring, etc.
Recoverability Test Cases for Mobile Applications
- Check for the capability of the app to restore itself after a sudden crash
- App behavior at the time of the crash that happens in between money transactions
- How the app behaves at the time of power failure
- Check the ability of the app to restore data after a failed connection scenario
What exactly are Test Cases?
It’s a fact that the test case listed here is just the tip of the iceberg compared to what happens in real-life QA. The idea here is to make readers more accustomed to the need of test cases in testing all the possible scenarios the app goes through. To ease up from the hurdles, Testscenario has experienced testers who have already invested strenuous effort in creating test cases and will be able to create custom ones according to the client requirement, app domain, and user focus. Talk to us so that we can have a detailed discussion about testing the app or if you already have test cases we can help you in automating to save a ton of time in development.