Chapter 11. Continuous integration tools
Michael J. Gelb
This chapter covers
- Practicing continuous integration
- Introduction to CruiseControl
- Introduction to Hudson
In the two previous chapters we described ways to execute our tests automatically by using tools such as Ant and Maven. Our tests were then triggered by the build. Now it’s time to go to the next level: automatically executing the build and the tests at a regular interval by using some other popular tools. In this chapter we introduce the paradigm of continuous integration and show you how to schedule your project to be built automatically in a certain timeframe.
Integrating the execution of JUnit tests as part of your development cycle—code : run : test : code (or test : code : run : test if you’re test-first inclined)—is an important concept in the sense that JUnit tests are unit tests, that is, they test a single component of your project in isolation. A great many of the projects out there, however, have modular architecture, where different developers on the team work on different modules of the project. Each developer takes care of developing their own module and their own unit tests to make sure their module is well tested.