posted on 2021-03-23, 14:40authored byUraz Turker, Robert Hierons, Guy-Vincent Jourdan
A characterizing set (CS) for a deterministic finite state machine (FSM)Mis a set of input sequences that, between them, separate (distinguish) all of the states of M. CSs are used within several test generation techniques that return test suites with guaranteed fault detection power. The number of input sequences in a CS directly affects the cost of applying the resultant test suite. In this paper, we study the complexity of decision problems associated with deriving a smallest CS from an FSM, showing that checking the existence of a CS with K sequences is PSPACE-complete. We also consider the length of a CS, which is the sum of the lengths of the input sequences in the CS. It transpirest hat the problem of deciding whether there is a CS with length at most KisNP-complete. Motivated by these results, we introduce a heuristic to construct a CS, from a deterministic FSM, with the aim of minimizing the number of input sequences. We evaluated the proposed algorithm by assessing its effect when used within a classical test generation algorithm (the W-method). In the evaluation, we used both randomly generated FSMs and benchmark FSMs. The results are promising, with the proposed algorithm reducing the number of test sequences by 37.3% and decreasing the total length of the test suites by 34.6%on average.
History
Citation
Science of Computer Programming
Volume 208, 1 August 2021, 102645