Sciweavers

KBSE
2010
IEEE

Test generation to expose changes in evolving programs

13 years 11 months ago
Test generation to expose changes in evolving programs
Software constantly undergoes changes throughout its life cycle, and thereby it evolves. As changes are introduced into a code base, we need to make sure that the effect of the changes is thoroughly tested. For this purpose, it is important to generate test cases that can stress the effect of a given change. In this paper, we propose an automatic test generation solution to this problem. Given a change c, we use dynamic symbolic execution to generate a test input t, which stresses the change. This is done by ensuring (i) the change c is executed by t, and (ii) the effect of c is observable in the output produced by the test t. To construct a change-reaching input, our technique uses distance in control-dependency graph to guide path exploration towards the change. Then, our technique identifies the common programming patterns that may prevent a given change from affecting the program’s output. For each of these patterns we propose methods to tune the change-reaching input into an i...
Dawei Qi, Abhik Roychoudhury, Zhenkai Liang
Added 29 Jan 2011
Updated 29 Jan 2011
Type Journal
Year 2010
Where KBSE
Authors Dawei Qi, Abhik Roychoudhury, Zhenkai Liang
Comments (0)