The test cases that you can work with effectively are the test cases you can quickly write and manage without correcting all the dependencies. Testing of financial applications requires specific knowledge of writing test cases and what type of test cases to apply at the beginning of the development and when deploying an app.
We will go over some examples of writing efficient and manageable test cases when testing financial applications, what test cases to write when deploying the app, and highlight the checklist for writing test cases for banking or financial applications to help you and your testing team. Let’s go!
We also discussed different types of test cases you should consider in the video.
Reminder: what to include and omit when writing test cases
Having a prompt on how to write a good test case is useful for everyone – QA leads, testers and engineers. It is also helpful even for QA managers, who are involved in test case writing not too often, but whose main goal is to ensure that a product meets all required qualifications.
Any type of test case should include:
- It is essential to have a unique identifier for your test case so that the issue can be easily identified and navigated through the kits;
- A title and a brief description of test cases is necessary – so you can locate them quickly among the other patients;
- Preconditions are not directly related to the functionality that is tested. Still, they must be fulfilled: you can describe the test case’s environment and the previous outcome even in the sequence. Preconditions help to estimate the context of a particular test case in software testing;
- Steps of the test case to show the tester what actions will lead to the expected result;
- The output should include the description of the desired result after finishing the test;
The things to avoid designing test cases:
- While writing test cases, avoid unclear formulations;
- Avoid dependencies on the other test cases;
- Excessive details or lack of information that is necessary for passing test cases.
Get a testing strategy template that enables us to release 2 times faster
Software testing: financial and banking applications
Testing of financial applications is getting more complex because of the growing number of microservices and other multi-layer connections. A banking and financial application integrates with different regulatory or supplementary applications such as payment gateways, merchants, and trading accounts; the following types of test cases and testing should be written correctly.
Test cases to write when testing financial and banking applications
There are several key types of test cases in QA you can’t avoid dealing with banking and financial applications. Let’s get to the point and outline them.
- Check if new accounts are created correctly with valid data;
- Use functional testing type to check how an application behaves if the accounts are created with invalid data;
- To make sure your account is secure, check login functionality with invalid data;
- It is essential to check that the app functions from a user’s point of view (whether balance updates after withdrawal or crediting, regular payments saved and performed at a specific time);
- You must test the app in all of its functions from an admin’s point of view too(whether bulk messaging can be sent and analyzed, whether support requests are correctly handled. Use integration testing for that).
This type of testing is applicable only if a tester has system architecture expertise. In any other case, you better delegate this type of testing to your system architects to do it by themselves.
- Check if the data is structured correctly;
- Make sure that the field’s data has the correct format;
- Check if the values of computed fields are accurately calculated;
- Check if each table has all needed constraints: primary keys, foreign keys, and unique indexes;
- Сheck if there is duplicate data in the table;
- Don’t be fooled by the null value. Make sure you check if it should exist and not in any other places;
- Ensure that all data is written correctly to the table when a user creates or updates their profile;
- Check application behaviour when the database server is not working;
- Ensure that your data isn’t lost after an operation fails; check if the previous history was saved;
- One of the most crucial aspects of maintaining a database is ensuring that you have regular backups. If this process isn’t done on time or at all, your data could be lost forever.
- Check app performance when lots of users use the same or different functionalities;
- Run a test when your device is fully charged, medium charged and when it is about to die;
- Use a few types of devices manufactured in different years, for example, 2021 and 2018. You will need this to ensure that the system capabilities are enough not to cause the app’s crash for different devices;
- Check app performance when the connection is slow;
- You can check your app’s performance to see if it slows down or chokes during a transaction. You should also monitor for this when the Internet speed changes from slow, middling speeds all of a sudden becoming fast-loading and reliable.
- Check the outlines of the requirements vs. types of test cases;
- Check issues between the current release and the previous release;
- Check compliance with FMEA, output from code coverage report, etc.;
- Check regression test packs are continuously pruned by removing the test cases that are no longer needed & adding additional ones.
You may have noticed that test cases for financial applications are quite easy to categorise. You will also need a lot of similar tests to achieve full test coverage and pass regulatory audits. This makes AI a perfect solution to speed up quality assurance in banking.
aqua’s AI Copilot leverages the GPT language model to analyse and find patterns in your company’s tests. The Copilot can then expand complete test case drafts or even create entire tests from scratch. You have a granular control over the level of AI’s involvement, and you can always review the output before expanding your test case suite.
AI test cases for banking at an unprecedented scale
There are Web Content Accessibility Guidelines (WCAG) which were developed through the W3C process to provide a single shared standard for web content accessibility. Its main goal is to meet the needs of individuals, organizations, and governments internationally. It also explains how to make web content more accessible to people with disabilities.
At present days, there are 3 WCAG guidelines – 2.0, 2.1, 2.2 that contain requirements with success criteria.
WCAG 2.0 and WCAG 2.1 are technical standards with 12-13 guidelines structured by 4 principles: perceivable, operable, understandable, and robust.
Each guideline has testable success criteria of three levels: A, AA, and AAA.
Here are exact quotations (that can also be used as a checklist) of Accessibility Principles specified in WCAG:
- Perceivable Information and user interface
- Text alternatives for non-text content
- Captions and other alternatives for multimedia
- Content can be presented in different ways
- Content is easier to see and hear
- Operable user interface and navigation
- Functionality is available from a keyboard
- Users have enough time to read and use the content
- Content does not cause seizures and physical reactions
- Users can easily navigate, find content, and determine where they are
- Users can use different input modalities beyond the keyboard
- Understandable information and user interface
- Text is readable and understandable
- Content appears and operates in predictable ways
- Users are helped to avoid and correct mistakes
- Robust content and reliable interpretation
- Content is compatible with current and future user tools
Web Content Accessibility Guidelines is a very complex but very useful tool in Accessibility testing that you can rely on. You always can refer to their website to learn more information about how to make your product accessible for different individuals.
- Check how the application responds to multiple logins;
- Check if the “Forgot password” option allows you to recover the account details quickly;
- Check if pass requirements are good enough;
- Make sure that IDs and passwords are encrypted;
- Check if the application uses a secure protocol, like HTTPS;
- Check if the pass hides under dots or other signs when the user enters it in the application;
- It is a valuable safety feature to ensure that the user does not remain logged in indefinitely;
- Ensure the application response to cache clearance in such types of test cases
User acceptance testing
- Check if navigation is intuitive and adjustable at the user interface;
- While writing a user acceptance testing test case, you should check the font and colour scheme to make sure that all visual elements match;
- It is crucial to make sure all the pages on the app are using consistent language, so start with checking for terms like “recurring charges” or regular payments;
- Make sure that all of the links and buttons have clear titles;
- Error and warning messages should be self-explanatory, so check that they are.
- Essential fields have placeholders for important information like tips or explanations on avoiding trouble in the future, so adjust the user interface for that too.
If the sheer volume of accessibility tests frightens you, we goty ou covered. The latest developments in AI testing make it trivial to cover edge cases and scale similar tests across the entire solution. Consult our overview of AI testing trends to learn more.
Learn the 5 AI testing trends to save 12.8 hrs/week per specialist
Addressing the challenges of writing test cases for financial and banking apps
Challenge 1: Lack of knowledge about compliance requirements in software testing. When writing test cases on security testing, lack of knowledge could result in issues while passing security compliance of the tested financial application.
Challenge 2: While testing, you can meet other fields such as data migration, advanced security levels, or, as we mentioned above, databases. They also need to be checked. It might be challenging for QA testers who lack knowledge about systems, frameworks, or migrations specialities. In this case, using ready-made templates for writing test cases for banking and financial apps can be a solution.
Applying a professional test case management tool can help address the challenges of writing test cases in software testing: aqua ALM is the solution to help a testing team with compliance requirements, data migration, and test case customization.
Sample test cases for banking apps
As we talk about test cases in banking, it would be useful to mention SDLC for the banking system and how it works in this context.
To perform Software Development Life Cycle you need to identify scope identification, plan analyses, and design, development, testing, deployment, and acceptance testing.
Here is a direct quote from Axtria analytical agency regarding the main objectives of SDLC:
“Similarly, availability, usability, support and training requirements are handled separately by operations. Continuous collaboration is reduced to an orchestrated intervention-driven approach.”
Therefore, this approach gains to minimize the efforts of the entire development and quality assurance team on way to release a product faster, more cost-effective, and with fewer bugs and defects. Once you implemented the test management or ALM tool, it would also be nevertheless useful to simplify the process of testing some specific banking features or, for instance, writing of proper test scenario for a banking application.
However, there is no universal test case example for banking; there are still some instances you can refer to get efficient testing. You might also want to pay a little bit more attention to security measures since it is the financial sector. Making sure that your data is protected and the security works smoothly are essential. So here are some of the examples of what to test.
- Use valid, Invalid and no data to verify admin login
- Use valid, Invalid and no data to verify admin change password
- Authenticate existing admin home links
- Validate admin logout
New Role verification:
- Use valid, Invalid and no data to create a new role
- Use existing data to create a new role
- Validate a role description and its types
- Verify a reset and cancel option
- Verify role deletion with and without dependency
- Authenticate existing links on the role details page
Customers & visitors verification:
- Authenticate existing visitor or customer links
- Use valid, Invalid and no data to verify customers
- Use valid, Invalid and no data to verify a banker’s login
New users verification:
- Use valid, Invalid and no data to create a new user
- Use valid, Invalid and no data to create a new user with existing branch data
- Verify a reset and cancel option
- Use valid, Invalid and no data to update a user
- Use existing data to update a user
- Validate a cancel option
- Validate deletion of the user
New branch verification
- Use valid, Invalid and no data to create a new branch
- Use existing branch data to create a new one
- Verify a reset and cancel option
- Use valid, Invalid and no data to update a branch
- Use existing branch data to update a branch
- Validate a cancel option
- Validate branch deletion with and without dependency
- Validate a branch search option
Writing test cases for financial applications can be tricky for a testing team: the specific environment of app deployment, lack of compliance knowledge, and complexity of the test cases. Choosing the fit tool for testing banking and financial apps means solving 50% of the problems that might arise when the other 50% of the problem’s solution is a qualified test case management. You can find 100% of that in aqua ALM.
Get a proven banking-ready test management solution