Using Partial Models to Support the Testing of Distributed Systems

C. Robinson-Mallett (Germany), R.M. Hierons (UK), J. Poore (USA), and T. Bauer (Germany)


Conformance Testing, Distributed Systems, Markov chain Models, Timed State-Based Specifications


This paper considers the problem of testing the communication between components of a timed distributed software system. We assume that communication is specified using timed interface automata. One of the practical issues with such systems is that components might be of reasonable size and complexity, whereas the system as a product of its components is not. Test sequences can be generated from such a state-based specification of a distributed system, possibly to achieve a concrete test coverage goal. However, we may have to apply test sequences many times in order to provoke sporadic failures that may occur as a consequence of the system's calibration, e.g. throughput, communication load, processor load, or memory usage. In order to cope with these problems we automatically derive a Markov chain model from a given set of test sequences and use this test-model to direct testing. We introduce an algorithm for generating a test model from a set of sequences of use in such a way that each test sequence is a trace of the test-model and the test model may contain additional traces. We demonstrate that the presented approach increases test effectiveness regarding sporadically occurring failures and through additionally covered uses of the system. Furthermore, we argue that this approach can form part of an iterative integration process for distributed software systems. A major benefit of the presented approach lies in its applicability and scalability to large distributed systems, since the complexity of partial model generation depends only on the number and length of test sequences used.

Important Links:

Go Back