CODE, COMMIT, CONFIRM: EXPLORING TDD WITH CONTINUOUS INTEGRATION
Main Article Content
Abstract
When a software product is composed of hundreds of components with complicated dependency relationship among them, change in one component can affect lots of other components' behaviour. Test Driven Development (TDD) is an approach for developing programs incrementally by first writing tests and then writing enough code to satisfy them. Continuous integration is a process that provides rapid and automatic feedback on the security of the applications that are undergoing development. Test-driven development (TDD) and continuous integration (CI) has changed the way software is tested. Software testing was often a separate process at the end of a project. It is now being worked on during the entire development period. TDD and CI rely on unit tests. This paper provides a literature study on two closely related software development approaches viz. Test Driven Development and Continuous Integration.
Downloads
Metrics
Article Details

This work is licensed under a Creative Commons Attribution 4.0 International License.
You are free to:
- Share — copy and redistribute the material in any medium or format for any purpose, even commercially.
- Adapt — remix, transform, and build upon the material for any purpose, even commercially.
- The licensor cannot revoke these freedoms as long as you follow the license terms.
Under the following terms:
- Attribution — You must give appropriate credit , provide a link to the license, and indicate if changes were made . You may do so in any reasonable manner, but not in any way that suggests the licensor endorses you or your use.
- No additional restrictions — You may not apply legal terms or technological measures that legally restrict others from doing anything the license permits.
Notices:
You do not have to comply with the license for elements of the material in the public domain or where your use is permitted by an applicable exception or limitation .
No warranties are given. The license may not give you all of the permissions necessary for your intended use. For example, other rights such as publicity, privacy, or moral rights may limit how you use the material.
References
Gotterburn, D. UML and Agile Methods: In support of Irresponsible Development. Inroads – The SIGCSE Bulletin, 36, 2 (June 2004), 11-13.
K. Beck, Extreme Programming Explained. Don Mills: Addison-Wesley Publishing Co., 1999. B. Marick, "Testing in the Agile Manifesto," http://www.testing.com/cgi-bin/blog ed, 2004.
ACM Transactions on Computational Logic, Vol. V, No. N, December 2011, Pages 1-21.
K. Beck. Test-driven development: by example. Addison-Wesley Professional, 2003.
B. George and L. Williams. “An initial investigation of test driven development in industry”. In: Proceedings of the 2003 ACM symposium on Applied computing. ACM. 2003, pp. 1135–1139.
Martin Fowler. Continuous Integration. Internet, 2006. www.martinfowler.com/articles/continuousIntegration.ht ml
M. Fowler. Continuous integration. http://www.martinfowler.com/articles/continuousIntegrat ion.html. 2006.
P. Duvall, S. Matyas, and A. Glover. Continuous integration: improving software quality and reducing risk. Addison-Wesley Professional, 2007.
Apache Software Foundation. Welcome to Apache Maven. http://maven.apache.org/.
Apache Software Foundation. Apache Ant - Welcome. http://ant.apache.org/.
NAnt. NAnt - A .NET Build Tool. http://nant.sourceforge.net/.
Microsoft. MSBuild Reference. http://msdn.microsoft.com/en-us/library/0k6kkbsd.aspx.
FinalBuilder. VSoft Technologies > Home. http://www.finalbuilder.com/.
K. Beck and C. Andres. Extreme programming explained: embrace change. second. Addison-Wesley Professional, 2004.
Paul M. Duvall. Continuous Integration: Improving Software Quality and Reducing Risk. Addison-Wesley, 1st edition, 2007.
R Subramaniam, V., & Hunt, A. (2006). Practices of an agile developer: Working in the real world. Raleigh, NC: Pragmatic Bookshelf. 68