Debugging and test case generation using constraints and mutations

Franz Wotawa, Simona Nica, Mihai Nica · Workshop on Intelligent Solutions in Embedded Systems · 2011

The automation of debugging, i.e., fault localization, is an old but still open challenge in computer science. There are a number of at least partial solutions reported in literature. Some of them rely on basic concepts of AI like model-based debugging or debugging based on constraints. In this paper we focus on constraint-based debugging, provide a detailed formal introduction of the basic ideas and concepts, and finally state the automated debugging challenge as a constraint satisfaction problem. Although the proposed solution is general, the approach is more applicable to restricted programs like the one used in control. Furthermore, we introduce an extension of previous work that is based on program mutations and distinguishing test cases and discuss empirical results indicating the applicability of the approach. With the introduced extensions we obtain reductions in the number of diagnosis candidates of more than 50 %.

Read the paper · More papers on PaperTik