1.1.1 Why Continuous Integration with build and test automation?

Continuous Integration (CI) is a developer practice of frequently committing your code changes to a source code repository, e.g., git. Each commit triggers an automated build and test cycle. If the build breaks or a test fails, you are notified. Doing Continuous Integration helps build quality into the product from the start, coordinates code changes with your team, and reduces the risks associated with late integration and late validation feedback.

The Continuous Integration developer practice works together with a build automation system. This system automatically starts jobs/processes like compile, test, package, and deploy. This helps you keep the code quality high by uncovering issues early. There are many different build automation tools available. Jenkins is a free and open-source software. It is a popular tool that we will use as an example. If you are using a different system, look at the Jenkinsfiles generated by the CI/CD Wizard for inspiration.