Software Development - Case Study
Automation Overhaul for a Banking Platform
Overview
-
Re-architecting a vast automation suite for a credit-card banking application, to reduce its execution time and to be able to run it without any manual intervention.
-
Tech Stack – Java, Jenkins, Rest-Assured, Selenium, Cucumber, Oracle, DB2, H2
Business Challenge
-
Automation suite being brittle - took a long time to complete execution with frequent manual interventions, with the result of needing over 2 weeks to complete “selective” regression.
-
The dependency of automation suite on many external services and databases, added to its complexity.
Solution Offered
-
Focused efforts around service virtualization and stubbing responses.
-
Studied structure and composition of DB schemas exhaustively, to efficiently create in-memory databases stubs.
-
Refactored automation BDD scripts to be more business centric, and less technical and elaborative step definitions.
-
Stressed on frequent execution of scripts on CI servers, with greater discipline to keep them green.
Business Benefits
-
Squeezed regression execution time to less than a week, with multiple modules being fully automated.
-
Greater knowledge of external system interactions and composition of DB schemas.