Symbolic Execution for Software Testing in Practice – Preliminary Assessment

Cristian Cadar, Patrice Godefroid, Sarfraz Khurshid, Corina Păsăreanu, Koushik Sen, Nikolai Tillmann, and Willem Visser
Imperial College London, UK; Microsoft Research, USA; University of Texas at Austin, USA; CMU/NASA Ames Research Center, USA; UC Berkeley, USA; University Stellenbosch, South Africa)

We present results for the “Impact Project Focus Area” on the topic of symbolic execution as used in software testing. Symbolic execution is a program analysis technique introduced in the 70s that has received renewed interest in recent years, due to algorithmic advances and increased availability of computational power and constraint solving technology. We review classical symbolic execution and some modern extensions such as generalized symbolic execution and dynamic test generation. We also give a preliminary assessment of the use in academia, research labs, and industry.