TY - GEN
T1 - Fitness-guided path exploration in dynamic symbolic execution
AU - Xie, Tao
AU - Tillmann, Nikolai
AU - De Halleux, Jonathan
AU - Schulte, Wolfram
PY - 2009/11/25
Y1 - 2009/11/25
N2 - Dynamic symbolic execution is a structural testing technique that systematically explores feasible paths of the program under test by running the program with different test inputs to improve code coverage. To address the space-explosion issue in path exploration, we propose a novel approach called Fitnex, a search strategy that uses state-dependent fitness values (computed through a fitness function) to guide path exploration. The fitness function measures how close an already discovered feasible path is to a particular test target (e.g., covering a not-yet-covered branch). Our new fitness-guided search strategy is integrated with other strategies that are effective for exploration problems where the fitness heuristic fails. We implemented the new approach in Pex, an automated structural testing tool developed at Microsoft Research. We evaluated our new approach by comparing it with existing search strategies. The empirical results show that our approach is effective since it consistently achieves high code coverage faster than existing search strategies.
AB - Dynamic symbolic execution is a structural testing technique that systematically explores feasible paths of the program under test by running the program with different test inputs to improve code coverage. To address the space-explosion issue in path exploration, we propose a novel approach called Fitnex, a search strategy that uses state-dependent fitness values (computed through a fitness function) to guide path exploration. The fitness function measures how close an already discovered feasible path is to a particular test target (e.g., covering a not-yet-covered branch). Our new fitness-guided search strategy is integrated with other strategies that are effective for exploration problems where the fitness heuristic fails. We implemented the new approach in Pex, an automated structural testing tool developed at Microsoft Research. We evaluated our new approach by comparing it with existing search strategies. The empirical results show that our approach is effective since it consistently achieves high code coverage faster than existing search strategies.
UR - http://www.scopus.com/inward/record.url?scp=70450057300&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=70450057300&partnerID=8YFLogxK
U2 - 10.1109/DSN.2009.5270315
DO - 10.1109/DSN.2009.5270315
M3 - Conference contribution
AN - SCOPUS:70450057300
SN - 9781424444212
T3 - Proceedings of the International Conference on Dependable Systems and Networks
SP - 359
EP - 368
BT - Proceedings of the 2009 IEEE/IFIP International Conference on Dependable Systems and Networks, DSN 2009
T2 - 2009 IEEE/IFIP International Conference on Dependable Systems and Networks, DSN 2009
Y2 - 29 June 2009 through 2 July 2009
ER -