Using a minimal number of resets when testing from a finite state machine

Finite State Machines (FSMs) are used to model a number of classes of systems, including communications protocols and control systems. There has thus been much interest in automating the generation of tests from FSMs [1,5,7,8]. A reset is an operation that takes the system from each state to the initial state. The use of a reset may increase the cost of testing and reduce its effectiveness [2,3,9]. Thus, it is often desirable to minimize the number of resets used in testing. This paper investigates problems of the form: produce a test sequence p, that contains each element of some non-empty set T of sequences, such that there does not exist a test sequence p′ that contains each element of T and has fewer resets than p. The proposed (polynomial time) algorithm is guaranteed to produce a test sequence that has the minimum number of resets when considering test sequences that connect the sequences from T but do not utilize overlap.