Continuous Integration
The basics of the Continuous Integration are:
- We have a test suite that each developer runs on their own machine.
- When they commit their code to a shared version control repository, the tests are run again, "integrated" with code from other developers.
This helps ensure there's nothing specific to the developer's machine making the tests pass. The code in version control needs to run cleanly in production later so before the code is allowed to be deployed to production, it is run on a CI server or service.
🟢 Green is good​
W use a combination of BitBucket and CircleCI because of their great UIs, simple configuration and close integration with Bitbucket.
CI test runs are triggered when we push to Bitbucket and can be seen as part of the status checks of pull requests.
Are you curious?
Martin Fowler has an extensive description of Continuous Integration.