Information Technology Reference
In-Depth Information
All Tests and Inspections Must Pass
In a CI environment, 100% of a project's automated tests must pass for
your build to pass (this is a technical criterion, not an expectation that
all workers or all work should be perfect). Automated tests are as
important as the compilation. Everyone accepts that code that does not
compile will not work; therefore, code that has test errors will not
work either. Accepting code that does not pass the tests can lead to
lower-quality software.
An unscrupulous developer may simply comment out the failing
test. Of course, this defeats the purpose. Coverage tools assist in pin-
pointing source code that does not have a corresponding test. You can
run a code coverage tool as part of an integration build.
The same goes for running automated software inspectors. Use a
general rule set of coding and design standards that all code must pass.
More advanced inspections may be added that don't fail the build, but
identify areas of the code that should be investigated.
Run Private Builds
To prevent broken builds, developers should emulate an integration
build on their local workstation IDE after completing their unit tests.
This build allows you to integrate your new working software with the
working software from all the other developers, 6 obtaining the changes
from the version control repository and successfully building locally
with the recent changes. Thus, the code each developer commits has
contributed to the greater good, with code that is less likely to fail on
the integration build server.
6. Some configuration management tools, such as ClearCase, have an option to
automatically update your local environment with the changes from the version
control repository (called “dynamic views” in ClearCase).
 
 
Search WWH ::




Custom Search