The Nightly Build and Smoke Test is a process in which a software product is completely built every night and then put through a series of tests to verify its basic operations. This process is a coding-stage process, and it gets initiated at the start of the coding phase of the project. The process produces its savings by reducing the likelihood of several common, time-consuming risks – unsuccessful integration, low quality, and poor progress visibility.
The Nightly Build and Smoke Test can be used effectively on projects of virtually any size and complexity.
It is the responsibility of the Build Group to create the required environment for running the nightly builds and monitoring it on a daily basis.
Advantages:
Here are some of the advantages associated with the Nightly Build and Smoke Test:
- Reduced Integration Risks: One of the greatest risks that a project faces is when team members combine or “integrate” their codes that they have been working on separately; their code does not work well together. The nightly-build-and-smoke-test process keeps integration errors small and manageable.
- Easier Defect Diagnosis: When the application is built and tested every day, it’s much easier to pinpoint why the application breaks down on any given day. If it worked on Day 17, and breaks on Day 18, something that happened between the Day 17 build and the Day 18 build broke the application.
- Progress Monitoring: When we build the application every day, the features that are present and not present are obvious. Both technical and non-technical managers can simply use the application to get a sense of how close it is to completion.
The Nightly–Build–and–Smoke–Test process is at heart a risk-management practice. It has a powerful ability to make the schedules more predictable and to eliminate some of the risks that can cause extreme delays – integration problems, low quality, and lack of progress visibility.