Quality is usually appraised by a collection of regression tests forming a suite of programs that test one or more features of the system.
A regression test is written and the results are generated. If the results are in error, then the offending bug is corrected. A valid regression test generates verified results. These verified results are called the ``gold standard.'' This term is borrowed from financial markets where paper money issued by governments was backed by real gold. 2.4
Ideally, the validity of a test result is driven by the requirement document; in practice, the implementation team is responsible for validity interpretation.
The tests are collected, as well as their gold-standard results, into a regression test suite. As development continues, more tests are added, while old tests may remain valid. Because of new development, an old test may no longer be valid. If this is the case, the old test results are altered in the ``gold standard'' to match the current expectations. The test suite is run generating new results. These new results are then compared with the gold-standard results. If they differ, then a potential new fault has entered the system. The fault is corrected and the development continues. This mechanism detects when new development invalidates existing development, and thus prevents the system from regressing into a fault state.
There are four major focuses of regression testing used to assure quality. A summary is found in Table 2.5 on page . The discussion follows.