The benefits of Continuous Integration (CI) are as follows:
- CI makes the current build constantly available for testing, demo and release purpose.
- With CI, developers write modular code that works well with frequent code check-ins.
- In case of a unittest failure or bug, developer can easily revert back to the bug-free state of the code.
- There is drastic reduction in chaos on release day with CI practices.
- With CI, we can detect Integration issues much earlier in the process.
- Automated testing is one very useful side effect of implementing CI.
- All the stakeholders including business partners can see the small changes deployed into pre-production environment. This provides early feedback on the changes to software.
- Automated CI and testing generates metrics like code-coverage, code complexity that help in improving the development process.