Testing Method
The (Stream) X-Machine Testing Method assumes that both the design and the implementation can be considered as (a collection of) Stream X-Machines. For each pair of corresponding machines (Spec, Imp), the purpose of testing is to determine whether the behaviour of Imp, the machine of the implementation, exactly matches the behaviour of Spec, the machine of the specification. Note that Imp need not be a minimal machine - it may have more states and transitions than Spec and still behave in an identical way.
To test all behaviours, it must be possible to drive a machine into all of its states, then attempt all possible transitions (those which should succeed, and those which should be blocked) to achieve full positive and negative testing (see above). For transitions which succeed, the destination state must also be verified. Note that if Spec and Imp have the same number of states, the above describes the smallest test-set that achieves the objective. If Imp has more states and transitions than Spec, longer test sequences are needed to guarantee that redundant states in Imp also behave as expected.
Read more about this topic: X-Machine Testing
Famous quotes containing the words testing and/or method:
“Now I see that going out into the testing ground of men it is the tongue and not the deed that wins the day.”
—Sophocles (497406/5 B.C.)
“Frankly, I adore your catchy slogan, Adoption, not Abortion, although no one has been able to figure out, even with expert counseling, how to use adoption as a method of birth control, or at what time of the month it is most effective.”
—Barbara Ehrenreich (b. 1941)