The Complexity of Coverage

We study the problem of generating a test sequence that achieves maximal coverage for a reactive system under test. We formulate the problem as a repeated game between the tester and the system, where the system state space is partitioned according to some coverage criterion and the objective of the tester is to maximize the set of partitions (or coverage goals) visited during the game. We show the complexity of the maximal coverage problem for non-deterministic systems is PSPACE-complete, but is NP-complete for deterministic systems. For the special case of non-deterministic systems with a re-initializing “reset” action, which represent running a new test input on a re-initialized system, we show that the complexity is coNP-complete. Our proof technique for reset games uses randomized testing strategies that circumvent the exponentially large memory requirement of deterministic testing strategies. We also discuss the memory requirement for deterministic strategies and extensions of our results to other models, such as pushdown systems and timed systems.

[1]  Mihalis Yannakakis,et al.  Optimization problems from feature testing of communication protocols , 1996, Proceedings of 1996 International Conference on Network Protocols (ICNP-96).

[2]  David Lee,et al.  Testing for Finite State Systems , 1998, CSL.

[3]  Mihalis Yannakakis,et al.  The complexity of probabilistic verification , 1995, JACM.

[4]  Mihalis Yannakakis,et al.  Testing, optimization, and games , 2004, Proceedings of the 19th Annual IEEE Symposium on Logic in Computer Science, 2004..

[5]  John H. Reif,et al.  The Complexity of Two-Player Games of Incomplete Information , 1984, J. Comput. Syst. Sci..

[6]  P. Sedgwick Matching , 2009, BMJ : British Medical Journal.

[7]  A. Jefferson Offutt,et al.  Introduction to Software Testing , 2008 .

[8]  Margus Veanes,et al.  Play to Test , 2005, FATES.

[9]  Thomas Ball,et al.  A Theory of Predicate-Complete Test Coverage and Generation , 2004, FMCO.

[10]  Rajeev Alur,et al.  The Theory of Timed Automata , 1991, REX Workshop.

[11]  David S. Johnson,et al.  Computers and Intractability: A Guide to the Theory of NP-Completeness , 1978 .

[12]  Joseph Sifakis,et al.  On the Synthesis of Discrete Controllers for Timed Systems (An Extended Abstract) , 1995, STACS.

[13]  Thomas A. Henzinger,et al.  Discrete-Time Control for Rectangular Hybrid Automata , 1997, Theor. Comput. Sci..

[14]  Andrew Curry,et al.  ßΣΤΛ testing. , 2021, Diabetes forecast.

[15]  Mihalis Yannakakis,et al.  Testing, Optimizaton, and Games , 2004, ICALP.

[16]  Carsten Lund,et al.  Proof verification and the hardness of approximation problems , 1998, JACM.

[17]  Christos H. Papadimitriou,et al.  Computational complexity , 1993 .

[18]  Rajeev Alur,et al.  Distinguishing tests for nondeterministic and probabilistic machines , 1995, STOC '95.

[19]  Jack Edmonds,et al.  Matching, Euler tours and the Chinese postman , 1973, Math. Program..

[20]  Jan Tretmans,et al.  Testing Transition Systems: An Annotated Bibliography , 2000, MOVEP.