Continuous integration is a practice, which if incorporated in the software development life cycle results in increased ability to spot errors before they are introduced into the system.
This development practice greatly reduces regression bugs in the system and is an inherent part of agile software development methodologies like XP and SCRUM.
Continuous Integration best practices are as follows:
1. When the developer commits the code in a version control system like, say for e.g. CVS. A new build should start automatically.
2. If the build is successful, automated tests should run without any manual intervention.
3. If the tests are successful, the integration cycle ends or else checkout the code that has broken the build and fix it.
Continuous integration can be implemented using the following products: