Controllability mechanism for object-oriented software testing

We present a controllability mechanism that facilitates creation of difficult-to-achieve states, for execution of state specific tests, during object-oriented software testing. Provisions are made in the software during the design phase and coded during the coding phase of software development. The mechanism requires creating the control environment and incorporating control commands in the software during software development. We illustrate the control mechanism using three examples, each requiring a unique control environment to attain the difficult-to-create states.