Please use this identifier to cite or link to this item:
|Title:||Test generation to expose changes in evolving programs|
|Source:||Qi, D.,Roychoudhury, A.,Liang, Z. (2010). Test generation to expose changes in evolving programs. ASE'10 - Proceedings of the IEEE/ACM International Conference on Automated Software Engineering : 397-406. ScholarBank@NUS Repository. https://doi.org/10.1145/1858996.1859083|
|Abstract:||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 input that reaches the change and propagates the effect of the change to the output. Our experimental results show that our test generation technique is effective in generating change-exposing inputs for real-world programs. © 2010 ACM.|
|Source Title:||ASE'10 - Proceedings of the IEEE/ACM International Conference on Automated Software Engineering|
|Appears in Collections:||Staff Publications|
Show full item record
Files in This Item:
There are no files associated with this item.
checked on Dec 5, 2017
checked on Dec 9, 2017
Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.