The Continuous Integration Pattern
Developers are urged to do more than write software, debug it and create artifacts like database tables. They write unit tests against individual classes and methods. They also run the unit tests others have written – they check their software in frequently.
Continuous Integration tools (like Jenkins or Confluence) that are polling the versioned repository, then checks out all the software and proceed to run the unit and integration tests against the software. If all is well the “release candidate” software is deployed to a production-like environment.