Information Technology Reference
In-Depth Information
Later in the day, another developer on the project, Lisa, runs into
Tim's office.
Lisa: I think the changes you made earlier today broke the last build!
Tim: Hmm…but, I ran the tests.
Lisa: Oh, I didn't have time to write tests.
Tim: Are you following the code coverage metric we have established
for the project? 1
Because of this discussion, they decided to fail the integration build
if their code coverage was below 85%. Furthermore, Lisa wrote a test for
the defect and fixed the problem she discovered because of her conver-
sation with Tim. The integration build continued to stay “in the green.” 23
Terms of the Trade
automated —A “hands-off” process. Once a fully automated pro-
cess begins, no user intervention is required. Systems administra-
tors call this a “headless” process.
build —A set of activities performed to generate, test, inspect, and
deploy software.
continuous —Technically, continuous means something that, once
started, never stops. This would mean the build runs all the time;
however, this isn't the case. Continuous, in the context of CI, is
more like continual, and in the case of CI servers, a process con-
tinually runs, polling for changes to the version control repository.
If the CI server discovers changes, it executes a build script.
Continuous Integration —“A software development practice where
members of a team integrate their work frequently, usually each
person integrates at least daily leading to multiple integrations
per day. Each integration is verified by an automated build (includ-
ing test) to detect integration errors as quickly as possible. Many
teams find that this approach leads to significantly reduced inte-
gration problems and allows a team to develop cohesive software
more rapidly.” 1
1. From www.martinfowler.com/articles/continuousIntegration.html.
Search WWH ::




Custom Search