ABSTRACT

This chapter explains examples of model-based testing (MBT) at both the unit and the system levels. In MBT, software testers consider models that express, to some extent, the stimuli and responses of a system they wish to test. There are three generally accepted levels of testing: unit, integration, and system. Each of these has distinct goals and methods. Unit testing occurs at the class or procedure level, integration testing considers sets of interacting units, and system testing occurs at the port boundary of a system under test (SUT). The port boundary of a system under test is the set of all points at which input stimuli and output responses occur. Every system, hardware, software, firmware, or some combination of these, has a port boundary. There are two fundamental forms of a test case—abstract and real. Software design models are of two general types—structural or behavioral. There are three commonly identified forms of model-based testing: manual, semi automated, and fully automated.