Why we love testing Mambu - a guide to the right test strategy.
Dragonfly has teamed up with a UK start-up digital bank (aiming to offer both affordable personal loans and savings deposit products) to redefine and implement the test strategy across the solution and to prove production readiness. The solution has integrated a complex tech stack with Mambu as their core banking platform. Given Mambu is a cloud-based banking platform that allows clients to be flexible with how to build and configure their banking products, this article details the approach taken and some challenges faced when testing a Mambu implementation.
Scope
Following initial analysis of the components, interfaces and configuration of Mambu, testing was spread across the following areas:
Account origination and servicing - Does a successful application create the correct account number under the right product? Are the correct account flags applied? For example, when an account is in arrears or if there is a history of fraud
Credit decisioning - Has the application decision reflected correctly as a valid account status in Mambu?
Pricing logic - Have the correct rates been applied based on the inputs of the application?
Payment processing - Validating loan disbursals, funding savings and the payments lifecycle across Direct Debits, FPS and Card payments
Regulatory reporting - Reconciliation with regulatory reporting system, when generating regulatory returns
Accounting systems - Reconciliation with financial system, are chart of accounts setup correctly?
MI - Do the aggregated MI reports produced reflect accurately as per the source systems?
Integration testing
Testing began at the technical integration level by thoroughly testing Mambu's RESTful APIs through scripts in Postman to be able to validate the Mambu endpoint directly and also via the specific internal APIs calling them. Like on many projects, the key to producing repeatable quality tests is having realistic and reliable test data. This is critical as it requires test customer data to match at the credit bureau and to satisfy any business logic rules. In addition to this testing and validating that the correct details have flowed through to Mambu without any data loss.
An exercise was performed to identify the most likely scenarios to automate and build out an automated REST-assured test framework to cover an extensive permutation of scenarios testing all input boundaries to achieve various business outcomes. Along with asserting the correct headers, body content and responses were received for each call, this resulted in a semi-automated regression pack to execute after every deployment. With the help of Mambu's well documented API and full list of error codes, tests could easily be configured to validate the happy path and negative test scenarios.
Business-let UAT
In parallel, the team worked with the business to plan, prepare, script and execute UAT scenarios. This consisted of key end-to-end business processes, edge case scenarios and any remaining scenarios that could not be automated. Testing covered ‘onboarding’ and 'in-life' customer journeys for both products such as validating loan schedules, maturity periods, interest calculations, statements, payment date changes and payment plans. This also included testing Mambu at the UI level, validating that both the configuration and the account setup is fit for purpose and integrated correctly with other systems.
Some of the challenges faced were encountered when testing complex scenarios on the payments stream, especially around direct debit scenarios as these are heavily reliant on real-world timing cycles. For example, the time it takes to setup and confirm a DD mandate could take up to 3 days, then there is a further period for confirmation of payment collection. It is important to take this into account when scheduling your testing and especially for the live proving phase. For other scenarios, there may be alternative methods to executing these 'time-shifting' scenarios, which may be through updating dates in the database or perhaps manipulating account statuses where required, for example testing when accounts are in arrears or account expirations. A deep-dive session is recommended with the relevant BAs and SMEs to understand the dependencies and impacts of such changes.
Non-functional testing
In addition to the functional testing which covered both integration and end-to-end customer journey level scenarios, performance testing was executed to ensure high volumes of applications were put through the system to simulate real-world scenarios and to identify any issues or bottlenecks at various loads.
By executing this test strategy, the right level of technical and business test coverage was achieved to confirm that the platform and implementation of Mambu was production-ready.
Dragonfly provides the gold standard in testing and quality engineering in Fintech with 10 years of deep domain expertise and a core focus gearing testing towards agility, speed and growth. If you are interested in hearing more please do get in touch at vchhay@wearedragonfly.co.
By executing this test strategy, the right level of technical and business test coverage was achieved to confirm that the platform and implementation of Mambu was production-ready.
In Summary
We love testing Mambu because of its approach to composable banking and allowing implementations to be flexible and customisable. For a cloud-based core banking platform, the interfaces (both UI and APIs) are well-documented and simple to adopt which makes our jobs as testers easier.
Dragonfly provides the gold standard in testing and quality engineering in Fintech with 10 years of deep domain expertise and a core focus gearing testing towards agility, speed and growth. If you are interested in hearing more please do get in touch at vchhay@wearedragonfly.co.