2019: Why QA Automation Matters in Financial Services

2019: Why QA Automation Matters in Financial Services

Banks and FinTech firms today have geared up to implement effective digital strategies to enhance the overall banking experience. However, the financial services industry juggles multiple priorities within its Technology function.

  • Speed of change: Businesses wish to adopt new technologies more rapidly. Just like the Apple iPhone did a decade ago, growth of ubiquitous computational power (the smart phone) and the associated apps boom is further revolutionizing the expectations in speed and agility from enterprise applications. While a business’ need for innovation has always been there, the expectations from IT (in terms of response times, UI/UX/CX) have changed.
  • Complexity of environment: Unlike the broad adoption of Core Banking Solutions (single monolithic applications) witnessed in early 2000s, today organizations are more more likely to go for a best-of-breed application stack. This leads to a higher complexity in the institution’s IT landscape and leverages integration technologies (service bus, SOA) extensively.
  • Frequency of change/ deployment: Improvement in software development techniques and the adoption of new development frameworks such as Agile have increased the speed at which enterprise software is updated. OEMs are now releasing weekly or monthly patches. With COTS solutions/ packaged applications forming the majority of the banking tech landscape, banks have to proactively plan update cycles – build and testing.
  • Digital transformation: In the current technology landscape, more digital based technologies are being adopted at a rapid pace. An Accenture survey of 80 bank COOs in North America says, “The need is for back-office operations to become more digital and to act as the new front office.” Most of the banking applications today need to interact with multiple back-end systems such as trade, loan origination, core-banking, retail lending, and wealth management. Each back-end system uses different technology frameworks that make integration quite complex. Additionally, business processes and transaction lifecycles are spread across multiple days or may need to be executed in real time. Banks need to manage these transactions without losing them, and they must flow from one back-office system to another seamlessly. To offer consistent user experience banks require end-to-end integration between multiple channels and legacy back-end systems. To ensure applications are robust and highly scalable, test automation becomes a critical part of any banking applications’ software development life cycle (SDLC).

When such complex integrations, multiple business work flows need to be tested repeatedly, manual testing can become quite cumbersome and time-consuming. Manual testing will not be able to completely test all the touch-points of the applications. Even so, the manual team’s attention to detail would falter if a significant volume of cases have to be repeated often.

Why QA Automation Matters


With most financial organizations moving towards continuous delivery and agile based development models, the frequency of testing increases. Considering the complexity of the landscape and the business transactions themselves, any QA effort would be complex and need to combine multi-disciplinary skills. In such a scenario, regression testing (testing of existing or unchanged functionality to ensure its stability) becomes a larger volume of work, drudgery and potential point of failure.

In order to keep testing efforts focused, efficient and consistent, test automation is becoming absolutely necessary. In a continuous delivery approach, the source code is developed, tested, and refined further. In agile project framework, several iterations of development happen in a day. With more QA feedback, these iterations only continue to increase. Therefore, highly efficient and self-sustainable automated deployment process is essential.

According to Forrester 2019 Financial services predictions, in 2019, innovation will finally come to the back office. After a decade of focus on customer experience, overhauling back-office processes will become fashionable again. This will see automation testing playing a major role to increase efficiencies and reduce time taken to modernize back-offices.

The testing process of digital applications aided by TENJIN ensures quality products and enhanced customer experience. To know more, write to us at info@yethi.in.

This blog was published on Yethi Consulting

Why Is There a Need to Automate a Bank’s API Testing


Why Is There a Need to Automate a Bank’s API Testing

With the advent of open APIs, new business opportunities are being created at the core of banking services. The changing needs of customers are driving banks to offer better services and superior experience. Banking is redefining itself by better utilizing data, entering partnerships for multiple digital channels, payment mechanisms, lending initiatives, and wealth management leading to a digital financial ecosystem. Additionally, with the PSD2 directives deadline looming, banks need to ensure 24/7 availability of APIs to third-party providers. Banks must ensure interoperability and align themselves with multiple players of the open banking ecosystem. All financial institutions will now need to adhere to Open Banking Conformance certification process to comply with PSD2 and the ultimate beneficiary of such an ecosystem will be end users.

theAsianbanker revealed that “one of the top banks in India implemented an API-based solution for its customer. The solution aimed to reduce inefficiencies in the trade finance and financial supply chain, by providing a cost-effective and efficient means of automating bill discounting”.

What exactly are open APIs?

Open APIs are the interface between applications owned by multiple organizations. By leveraging open APIs, there is secure mode of information sharing or access to specific features of an application to offer multiple banking services. For instance, India’s UPI-based services to an extent are based on open APIs. According to BBVA that has launched open banking services recently, “the APIs could also provide BBVA with new sources for customer acquisitions and loan originations. For example, through the loans API, third parties can inform customers when they have access to a pre-approved loan from BBVA. Additionally, the API can be integrated into the checkout process to allow customers to finance their purchase of a third party product or service at the point of sale with a BBVA loan.”

How are open APIs transforming the banking experience?

Open APIs are fundamentally transforming the banking experience for end users, whether it is individuals or global corporates. The adoption of open APIs is growing rapidly and banks must enable comprehensive, secure, real-time information sharing using open APIs. For example, financial institutions offering all kinds of banking services mentioned below use open APIs.

  • Allowing corporates to initiate payments directly via ERP without coming to any bank provided systems
  • PSD2 allows third parties to initiate payment requests or payments basis pre-authorization and also extends to other banking services
  • Reducing dependency on card and card interchange fees
  • Faster cross border settlements

It requires the banking application to pull and push various kinds of information. To offer such services a bank’s back-end and middleware systems must be prepared to support open APIs extensively and this involves complex integrations. For banks to design, build, and operate such vast and complex financial ecosystems based on open APIs, they need to be backed by robust quality assurance processes.

Challenges due to APIs:

  • As multiple applications and parties are involved in API-based transactions, multi-stage commits and rollbacks have to be executed to perfection.
  • Real-time monitoring has to be performed to plug any un-envisaged process gaps. Insufficient discussion and debate on transaction rollback procedures and error handling have led to banks left with footing a large bill—sandwiched between clients and third party payment initiators.
  • Points of failure can be external to banks and unlike credit cards, the traceability of transactions will be more painstaking and difficult to establish. With no interchange fees to create validation infrastructure, banks must not believe that the risks are similar to credit cards. Security protocols and authentication of third parties will gain prominence.

API testing makes FinTech innovation a reality

When it comes to open API testing, banks will need to ensure integrations are performed and tested in the most extensive manner possible. During API testing, banks primarily will need to validate the data response and behavior of API requests. They will require design and test APIs aligned with critical business logic and processes. With usage of APIs, banks need to accept the input data in the form of structured request and provide responses. Banks can automate most parts of the API testing such as functional testing, generation of dynamic data, extensive regression testing, test scenarios covering the complete ecosystem, performance, ad hoc scenarios, and robust security testing.

A Markets and Markets research points out that “The global API testing market size is expected to grow from USD 447.4 Million in 2017 to USD 1,099.1 Million by 2022, at a Compound Annual Growth Rate (CAGR) of 19.69% during the forecast period. In the API testing market, the BFSI vertical is expected to grow at the highest rate during the forecast period. The open API movement in the banking industry which exposes a wide range of banking APIs with other businesses is driving the API test market.” So this points to the growing importance of the practice and the need to invest in automated API testing.

Open API testing at banks can be vast and complex. Banks must actively adopt open APIs to stay at the forefront of FinTech innovation. To achieve this, banks apart from having collaboration and partnerships, need to be backed by robust back-end systems that deliver in tandem with open APIs. To achieve this, banks will need highly automated testing and QA strategy. Tenjin is a next-gen test automation suite tailored-made to meet highly evolving QA requirements of banks. Tenjin features a core engine that seamlessly automates a bank’s open APIs testing. To know more, write to us at info@yethi.in.

This blog was originally published on Yethi Consulting

How Banks Can Ensure Quality CRM Testing with an Automated Solution

This blog was originally posted on Yethi Consulting

The modern regulatory and competitive environment has forced banks and financial institutions to deploy CRM systems. CRM systems take over many key initiatives spread across sales, compliance, and service. Consisting of multiple custom designed workflows, these are data intensive and time-consuming to build and use. 

These systems have to be constantly tweaked to align with the new regulatory requirements and to improve customer service. Adoption of an automated testing solution becomes all the more necessary to reduce the risk of any unintended negative impact and to improve turn-around-times.

The Role of a CRM Solution in the BFSI Industry

A CRM solution in the BFSI sector is typically used for customer onboarding, customer data maintenance and customer service requests management that provides a 360-degree view about the customer. At its core, a CRM solution helps banks leverage customer data for marketing and sales activities. Right from running a campaign and generating leads to assigning and converting leads, a CRM solution can transform the customer experience. However, customer onboarding and customer data management can be complicated. Know Your Customer (KYC) norms involve intricate protocols to be followed and compliance requirements change frequently. Plus, the challenge of interfacing the CRM system with other systems can be a daunting task. What the BSFI sector needs to tackle these changes is an efficient and dynamic CRM solution.

Importance of CRM Testing

CRM systems are becoming an integral part of a bank’s processes. Being interfaced with multiple data sources, client service solutions and reporting databases, they gather and process large volumes of data. As modern IT systems are in a constant state of flux, CRM systems often get impacted. As the CRM systems are being changed and modified often, constant testing of CRM systems becomes imperative. 

The CRM testing activity can be done manually or through an automated solution. The challenge is that when the CRM is upgraded or transitioned from legacy systems, testing the CRM software manually becomes time-consuming and error-prone. The error rate also multiplies in no time and affects the various functions of the business. Automating the CRM testing process is the befitting solution.

Benefits of an Automated CRM Testing Solution

With the CRM testing automation solution, banks can tackle complex banking workflows. They also can:

  • Make better use of the large volumes of data
  • Ensure an agile process
  • Use the solution on multiple interfaces
  • Validate larger portions of the customer lifecycle
  • Follow a data-driven testing method

What makes banks to adopt an automated CRM testing strategy is the fact that the customer’s demands and expectations change rapidly. Banks can’t afford any delays and redundancies while working with their customer relationship lifecycle. The banking sector is beginning to see the advantages of using an automated solution and is slowly moving in that direction. The need of the hour is a dynamic automated CRM testing solution, a solution that could be deployed for multiple processes. 

How Banks Can Benefit from an Automated CRM Testing Process?

Of all the advantages that an automated CRM testing process brings in, the most important one is that it saves time. 

Let’s look at some more advantages:

  • Accurate: Automation brings in accuracy to the testing activity
  • Agile: As automation brings in accuracy and makes it error-free, the testing activity becomes agile
  • Reliable: Automated testing is much more reliable than manual testing and brings down the error rate
  • Reusable: CRM tests and components can be reused on different versions
  • Programmable: Automated CRM tests are programmable for different variables, operators, loops, etc.
  • Work 24/7: Unlike manual testing, automated CRM testing can be performed at any time and for longer spans
  • Better ROI: Automated testing has a big initial investment, but produces better ROI than manual testing

Considering all the advantages that automated CRM testing offers, it makes a strong case for itself in the banking industry. Banks can not only save money and time by investing in automated CRM testing software, but also ensure better resource utilization.

Checkmate Extended Implementations: Checklist for LOS testing

This blog was originally posted on Yethi Consulting

Banks and Financial Institutions are increasingly investing in improving the credit origination process, introducing a higher degree of automation and tracking. Test is key to helping these efforts due to various factors. One of the major challenges faced in LOS Testing is the complex operational processes. Here is a checklist that will help banks and financial institutions to do away with implementation woes through better planning.

  1. Automate early, as you will have to test often — ‘Fail fast, fail early’ is the mantra in testing. By automating early, it is possible to maximize the reuse of tests effectively. This forms the basis for Continuous Integration, prioritization and fixing issues accordingly.
  2. Planning and estimation — Despite significant advances in development methodology, Workflow systems are significantly more fragile than operational systems. Due to the dynamic nature of workflows, empirically a higher degree of errors and breakdowns have been observed. A proactive approach is necessary for estimating the amount of effort and time necessary for implementation and LOS application testing. This typically includes the establishment of a test bed, generation of test data, and test scripts.
  3. SME led Test Automation design and execution — The goal of testing is to ensure a high degree of accuracy, and hence it is important that BA/SME get to execute tests without the need for specialist programming skills or technical assistance. This will make it easier for Functional Testing, Integrity Testing, Usability Testing, and User Acceptance Testing. SME’s should be a mix of
  • Internal operations personnel who can anticipate unique business scenarios that were discussed but remain undocumented and
  • Specialist testers who will bring a standard methodology and ensure systematic and comprehensive coverage.

While application knowledge is desirable, considering that institutions significantly tailor the workflow to their unique process, this might not provide a significant advantage.

4. Preparation of quality test-data to provide maximum coverage — To ensure comprehensive coverage of all scenarios and different types of tests, data requirements have to be planned well in advance to cover all conceivable scenarios. This needs to include existing, expected and “expected unexpected” conditions of tests for achieving maximum coverage. Significant planning for upstream data is required to ensure that downstream conditions can be validated.

5. Transparent defect management — Fixing issues needs to be transparent and in a manner that has all parties on the same page. The nature of LOS makes it multi-tiered and interlinked to various departments and processes. One of the primary functions of Testing is to keep the mainline code working always, and this needs to be achieved by involving/updating all concerned departments/stakeholders.

6. Frequent Regression — Regression tests need to be conducted frequently. Financial institutions introduce new products, and releases, consequently, there is a need to conduct regression testing often to ensure that modifications do not impact other operational areas. Test cases need to be segregated and an automated regression testing approach(Risk Based Testing) needs to be put in place.

7. Mix mode testing — The goal of reducing testing efforts can be met by intelligently mixing manual testing and automation testing. Each form of testing is best suited for certain test cases, and the ideal implementation of LOS Software needs to include a mix of both automation and manual testing

3 Reasons Why Robotic Test Automation for Banking is Vital

This blog was originally posted on Yethi Consulting

In February this year, a leading bank in South Africa faced what it termed ‘technical issues’. Both mobile and internet banking apps were inaccessible on smartphones and web browsers, and ATM and card transactions were affected as well. A similar issue faced by another European bank in April 2018, saw 1.9 million of its mobile and internet banking customers were locked out of their accounts.

The above examples are just two of the many high-profile IT failures that have been affecting banks and in turn their customers all over the world. In most cases, the so-called technical issues always boil down to the inadequacies in the software testing process. According to the PwC Report ‘An Ounce of Prevention, Why Financial Institutions Need Automated Testing’, 21% of defects are not identified until after the software goes live. This puts the onus on organizations to ensure foolproof software testing. For banks to facilitate smoother functioning of programmed systems and applications, the only way forward is a platform which automates testing of software applications. Here are three reasons as to why automated financial application testing is a vital requirement that cannot be overlooked.

  1. Changing CX trends need test automation
  2. Robotic test automation reduces risk aversion to post-production defects
  3. Evolving regulatory requirements call for automated testing

Automation testing for banks is rapidly becoming the industry standard as it ensures overall application quality and efficiency—a key driver for the highly competitive and fast-paced environment of banking. Banks implementing financial application testing can not only avoid headline-making errors but gain added opportunities to increase revenue and improve customer experience.

Five Points to Consider while Deploying Software Test Automation


This blog was originally posted on Yethi Consulting

As banks and financial institutions battle a variety of external and internal changes, including the pressing need for digitization and the rapidly evolving regulatory changes, software test automation becomes the only way to provide the speed, agility and consistency that continuous testing requires. The World Quality Report 2016–2017, complied by capturing the responses of 1,660 executives from 32 countries points to organizations recognizing the increasing importance of testing. The proportion of IT budgets allocated to testing is expected to rise to 32% by 2020.

However, banks and financial institutions leveraging financial application testing often face several challenges and limitations. Banks using generic tools or those without a well-defined test automation vision are left to improvise and adopt solutions leading to the lack of proper test validations, greater maintenance effort, and low ROI. Robotic test automation for banking needs an end-to-end, highly advanced and seamless solution that can navigate the rapid changes that BFSI needs.

The checklist below serves as a guide to the right way to deploy automated testing for banks.

  • Choose the right test cases to automate

There are several criteria that can help choose the right test cases to automate. The need to run repetitive tests for multiple builds, tests which are prone to cause human error, and tests that require running on different configurations all provide better results with test automation. Since banking applications require functionality in high-risk conditions and need the speed and consistency to meet regulatory requirements, it is vital to choose the right test cases for robotic test automation for banking.

  • Choose to create automated tests resistant to UI changes

The costs, effort and time required for re-scripting and maintaining your test automation artefacts is probably the biggest reason for abandonment of test automation initiatives. The seamless deployment of automated testing for banks depends on automated tests being resistant to user interface change between builds. Banks constantly deal with periodic updates of applications, leading to a high possibility of UI changes. In order for automation to be effective, it should eliminate or significantly reduce the amount of effort required to continue in light of such application changes. This will ensure that financial application testing is resistant to evolving UI changes enabling robotic test automation for banking to be seamlessly deployed.

  • Choose to test early and often

Since confidential financial data is integral to banking applications, it is vital that applications for banking are tested early and often. This will ensure that bugs are detected early in the testing cycle. The advantage of progressive software test automation tools are that they can be implemented on day one and built gradually. The repetitive tests conducted ensure that all changes are progressively, automatically and intelligently incorporated in different test scenarios by using the same module as a basis for improvisation. Testing thus proceeds at higher speeds and with greater coverage.

  • Choose to create good quality test data

A common challenge for banks and financial institutions with automated testing is gaining access to production data and replicating it as test data. Test data has to meet two separate objectives — one, it has to represent the test cases in an exhaustive manner without duplication and two, it must be easy to maintain and re-set in case of repetitive rounds of testing. To illustrate further, it would require the skills of an Excel Master to be married to a banker with intimate knowledge of the business data.

Choose to test interfaces

Banking applications are no longer the monoliths they were a decade ago. Today, banking landscapes are a network of varied specialized applications inter-connected via sophisticated interfaces. In such scenarios, the robustness and accuracy of the interfaces across builds needs to be validated. In solutions where the APIs and UI are independently developed, usually at different points of time, the UI and the APIs might offer the same business operations but enforce a different set of checks and controls. Such applications make it imperative to ensure consistency across both these channels. 
 
With banking application being one of the most complex applications in the software and testing industry, the seamless deployment of automated banking application testing becomes a vital need. The right deployment strategy will ensure both seamless and successful testing for maximized ROI.