CI/CD-Triggered Functional Testing of Billing Engines Using Parameterized Xml Payloads and SQL Checks

Authors

  • Udayan Verma Denver, USA. Author

DOI:

https://doi.org/10.63282/3050-9262.IJAIDSML-V4I4P118

Keywords:

CI/CD, Jenkins Pipeline, Billing Engine Testing, Xml Payloads, SQL Validation, Test Automation, Financial Systems, Regression Testing

Abstract

Automating testing of functional billing engine testing by allowing for test authoring in CI/CD generated pipelines, is a standard for billing applications. By using parameterized XML and SQL database validation, companies can test and validate both transaction accuracy and long term data accuracy. In this paper we highlight our work with Charter Communications of creating Jenkins pipelines to automatically test for functional testing of rating, invoicing and adjustment transactions. We created dynamic parameterized XML template which allowed us to create near any billing transaction with SQL checks to verify both ledger balance, account balances, audit log balance. We implemented double barrier validations, front end validations and back end persistence validations to create two check points for errors as early as possible in the build/release cycle. Dashboards and reporting offered transparency, Jenkins offered the tests, every time a change is made, as regression tests with continuous delivery. Together, we realized efficiencies in process, and reduced human error, and decreased revenue leakage and compliance violations in a high transaction volume billing applications.

References

[1] Pratama, M.R. and Kusumo, D.S., 2021, August. Implementation of continuous integration and continuous delivery (ci/cd) on automatic performance testing. In 2021 9th International Conference on Information and Communication Technology (ICoICT) (pp. 230-235). IEEE.

[2] OWASP Foundation, “XML External Entity (XXE) Prevention Cheat Sheet,” OWASP Cheat Sheet Series, 2017 [Online]. Available: https://cheatsheetseries.owasp.org/cheatsheets/XML_External_Entity_Prevention_Cheat_Sheet.html.

[3] Jenkins Project, “Pipeline as Code — Jenkins User Documentation,” Jenkins.io, 2023 [Online]. Available: https://www.jenkins.io/doc/book/pipeline/

[4] M. Shahin, M. A. Babar and L. Zhu, “Continuous Integration, Delivery and Deployment: A Systematic Review on Approaches, Tools, Challenges and Practices,” IEEE Access, vol. 5, pp. 3909–3943, 2017, doi: 10.1109/ACCESS.2017.2685629. Available: https://ieeexplore.ieee.org/document/7926944

[5] John, M.M., Olsson, H.H. and Bosch, J., 2021, September. Towards mlops: A framework and maturity model. In 2021 47th Euromicro Conference on Software Engineering and Advanced Applications (SEAA) (pp. 1-8). IEEE.

[6] J. Castelein, G. De Vos, R. Hoeben and Y. Vanrompay, “Search-Based Test Data Generation for SQL Queries,” in Proc. 33rd ACM Symp. Appl. Comput. (SAC 2018), Pau, France, pp. 1543–1550, Apr. 2018, doi: 10.1145/3167132.3167283. Available: https://dl.acm.org/doi/10.1145/3180155.3180202.

Published

2023-12-30

Issue

Section

Articles

How to Cite

1.
Verma U. CI/CD-Triggered Functional Testing of Billing Engines Using Parameterized Xml Payloads and SQL Checks. IJAIDSML [Internet]. 2023 Dec. 30 [cited 2026 May 25];4(4):163-6. Available from: https://ijaidsml.org/index.php/ijaidsml/article/view/567