Information Technology Reference
In-Depth Information
Feedback
Mechanism
Database
Developer
Generate
Commit Changes
:
Commit Changes
Poll
Build Script
Developer
Compile Source Code,
Integrate Database,
Run Tests,
Run Inspections,
Deploy Software
Subversion
Version Control
Repository
CI Server
Commit Changes
Integration Build
Machine
Developer
Database Scripts
Drop/Create
Database/Tables
Apply Procedures/
Triggers
Insert Test
Data
FIGURE 1-5
Database integration design
Testing
Many consider CI without automated, continuous testing not to be CI.
We couldn't agree more. Without automated tests, it is difficult for
developers or other project stakeholders to have confidence in software
changes. Most developers on projects that use a CI system use unit-
testing tools such as JUnit, NUnit, or other xUnit frameworks to run
tests. Furthermore, you can run different categories of tests from a CI
system to speed up your builds. These categories may include unit,
component, system, load/performance, security, and others. Many of
these tests are discussed in more detail in Chapter 6. Figure 1-6 shows
an example of a JUnit report that CI servers such as CruiseControl
may generate as part of an integration build.
Search WWH ::




Custom Search