Integración Contínua: Travis
Continuous integration (CI) is the practice, in software engineering,
of merging all developer workspaces with a shared mainline several
times a day. It was first named and proposed as part of extreme
programming (XP).
Its main aim is to prevent integration problems,
referred to as
integration hell
in early descriptions of XP.
CI
can be seen as an intensification of practices of periodic integration
advocated by earlier published methods of incremental and iterative
software development.
- CI was originally intended to be used in combination with automated
unit tests written through the practices of test-driven development.
- Initially this was conceived of as running all unit tests and
verifying they all passed before committing to the mainline.
- Later
elaborations of the concept introduced build servers, which
automatically run the unit tests periodically or even after every
commit and report the results to the developers.
- In the same vein the practice of continuous delivery
further extends CI by
making sure the software checked in
on the mainline is always in a state that can be deployed
to users and makes the actual deployment process very rapid.
The use of build
servers (not necessarily running unit tests) had already been
practised by some teams outside the XP community. Now, many
organisations have adopted CI without adopting all of XP.
Subsecciones
Casiano Rodriguez León
2015-01-07