Title :
Guided path exploration for regression test generation
Author :
Taneja, Kunal ; Xie, Tao ; Tillmann, Nikolai ; De Halleux, Jonathan ; Schulte, Wolfram
Author_Institution :
Dept. of Comput. Sci., North Carolina State Univ., Raleigh, NC
Abstract :
Regression test generation aims at generating a test suite that can detect behavioral differences between the original and the modified versions of a program. Regression test generation can be automated by using dynamic symbolic execution (DSE), a state-of-the-art test generation technique, to generate a test suite achieving high structural coverage. DSE explores paths in the program to achieve high structural coverage, and exploration of all these paths can often be expensive. However, if our aim is to detect behavioral differences between two versions of a program, we do not need to explore all paths in the program as not all these paths are relevant for detecting behavioral differences. In this paper, we propose a guided path exploration approach that avoids exploring irrelevant paths and gives priority to more promising paths (in terms of detecting behavioral differences) such that behavioral differences are more likely to be detected earlier in path exploration. Preliminary results show that our approach requires about 12.9% fewer runs on average (maximum 25%) to cause the execution of a changed statement and 11.8% fewer runs on average (maximum 31.2%) to cause program-state differences after its execution than the search strategies without guidance.
Keywords :
program testing; regression analysis; dynamic symbolic execution; guided path exploration approach; program-state differences; regression test generation; state-of-the-art test generation technique; Automatic testing; Computer science; Fault detection;
Conference_Titel :
Software Engineering - Companion Volume, 2009. ICSE-Companion 2009. 31st International Conference on
Conference_Location :
Vancouver, BC
Print_ISBN :
978-1-4244-3495-4
DOI :
10.1109/ICSE-COMPANION.2009.5071009