A Practical Guide to Testing Object-Oriented Software
Distributed objects are first of all objects and need much of the same type of testing as other objects. One of the principal differences between distributed and nondistributed systems is the importance of timing. Timing is influenced by the sequence of statements in a method, the scheduling algorithms of the operating system, and the number of objects and their relationships. An initial question is whether the design sufficiently expresses the timing assumptions made by the design. The main testing question is whether the implementation is sufficiently flexible to operate correctly in the face of all legitimate orderings of execution. We have discussed temporal logic as a means of being expressive, and some instrumentation that allows us to investigate the effects of various sequences. |