You are previewing Continuous Delivery: Reliable Software Releases through Build, Test, and Deployment Automation, Video Enhanced Edition.

Continuous Delivery: Reliable Software Releases through Build, Test, and Deployment Automation, Video Enhanced Edition

O'Reilly logo

Chapter 3. Continuous Integration

Introduction

An extremely strange, but common, feature of many software projects is that for long periods of time during the development process the application is not in a working state. In fact, most software developed by large teams spends a significant proportion of its development time in an unusable state. The reason for this is easy to understand: Nobody is interested in trying to run the whole application until it is finished. Developers check in changes and might even run automated unit tests, but nobody is trying to actually start the application and use it in a production-like environment.

This is doubly true in projects that use long-lived branches or defer acceptance testing until the end. Many ...

The best content for your career. Discover unlimited learning on demand for around $1/day.