A Comparative Analysis of Test-Driven Development and Behavior-Driven Development in CI/CD Pipelines: Enhancing Software Quality and Delivery Speed
Keywords:
Test-Driven Development (TDD), Behavior-Driven Development (BDD), Integration (CI), Continuous Delivery (CD), CI/CD PipelinesAbstract
This paper will compare Test-Driven Development and Behavior-Driven Development in the context of continuous integrations and deliveries to enhance the software delivery quality and accelerate the delivery rate. TDD promotes a testing culture marked by creating tests before the actual code by assigning the developers the responsibility of delivering good code. On the other hand, BDD aims to facilitate cross-functional interactions between business and technical teams to express system behavior using natural language scenarios to meet business expectations. As applied to CI/CD pipelines, the delta between the two approaches offers various benefits, such as discovering defects ahead of time, encouraging information sharing, and constantly confirming product efficiency. However, such problems as high initial costs, issues with inter-functional collaboration, and frequent modifications still need to be solved. Finally, the future of TDD and BDD in DevOps is explored, and the opportunity for automation and some challenges that best practices may solve are focused on. Finally, the uses of TDD and BDD are presented as the beginning of a journey toward developing and achieving a culture of quality and agility.
References
] Martin, R. C. (2022). Clean Code: A Handbook of Agile Software Craftsmanship. Prentice Hall.
] Beck, K., & Cunningham, W. (2021). Using Pattern Languages for the Software Development Process. In Patterns of Enterprise Application Architecture (pp. 155-174). Addison-Wesley.
] Crisp, D. (2021). Behavior-Driven Development for Testers and Developers: A Practical Guide to BDD. Pragmatic Bookshelf.
] Fowler, M. (2020). The New Methodology. Retrieved from Martin Fowler's Website
] Elshafie, H. (2020). The Impact of Test-Driven Development on Software Quality: A Systematic Review. Journal of Software: Evolution and Process, 32(4), e2216.
] Gherkin, D., & TDD, B. (2019). Introduction to BDD with Cucumber: The Cucumber Book. Pragmatic Bookshelf.
] Meyer, B. (2018). Introduction to the BDD Methodology: Test and Behavior Driven Development in Agile. Springer.
] Krasowski, G., & Prusak, J. (2018). Test-Driven Development and Continuous Integration: A Case Study in Agile Software Development. International Journal of Software Engineering and Its Applications, 12(1), 1-12.
] Shahin, M. (2017). Continuous Integration and Continuous Deployment: A Practical Guide. Packt Publishing.
] Crispin, L., & Gregory, J. (2016). Agile Testing: A Practical Guide for Testers and Agile Teams. Addison-Wesley.
Downloads
Published
How to Cite
Issue
Section
License
Copyright (c) 2024 Well Testing Journal
This work is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License.
This license requires that re-users give credit to the creator. It allows re-users to distribute, remix, adapt, and build upon the material in any medium or format, for noncommercial purposes only.