Continous Integration is the practice of developers regularly merging changes in one central repository after which check builds and tests are run on every new change for verification.
Some of the benefits of CI include:
- Early problem detection:
- Whenever a new change is detected, a build/check is triggered. When the build fails based on functional or integration errors, developers are notified and nothing will be deployed. This calls for early debugging.
- Prevents Bug accumulation:
- Use of CI prevents piling up of bugs. From the above point, bugs are immediately detected and fixed as opposed to everyone working independently for an extended period of time then having multiple bugs when it’s time to merge the application for production.
- Automated testing:
- Aside from building and integrating the software, CI servers are also able to execute unit tests.
- Setting stage for Continous Deployment.
- Most CI tools support running scripts after the build/check has been completed. After a successful build you can automatically deploy your software to production, or whichever environment.
We’ll build a Node application to demonstrate this concept. These are the tools we’ll use:
- CircleCI as the Continous integration tool.
- Heroku, which offers platform as a service.
- Mocha as our testing framework.
- Git as our Version Control System.
- Github as our Repository Manager.
For the tutorial we assume you have knowledge in:
Look out for our next post where we’ll cover this.
You can share what CI tools you or your business use and what value you found in integrating them to your workflow