Testing is the process of sampling the executions of a system according to some given criterion. Each execution is compared with the specification, and any mismatch is reported as an error. Since testing is usually based on sampling of the system executions, rather than on systematically checking all of them, it is not considered to be an exhaustive check guaranteed to cover all possible errors. It provides a lesser guarantee than the more comprehensive formal methods presented in previous chapters. Thus, some researchers do not even include testing within formal methods. However, testing does provide a practical solution in the case where a given system is so large that it defies manual or automatic verification. In fact, testing is by and large the most commonly used method for enhancing the quality of software.
KeywordsModel Check Test Suite Software Test Condition Coverage Program Variable
Unable to display preview. Download preview PDF.
The classical book on software testing is still Myer’s
- G. J. Myers, The Art of Software Testing, Wiley, 1979.Google Scholar