Towards Optimal Concolic Testing
SUN, Jun is currently an associate professor at Singapore Management University (SMU). He received Bachelor and PhD degrees in computing science from National University of Singapore (NUS) in 2002 and 2006. In 2007, he received the prestigious LEE KUAN YEW postdoctoral fellowship. He has been a faculty member since 2010. He was a visiting scholar at MIT from 2011-2012. Jun's research interests include software engineering, formal methods, program analysis and cyber-security. He is the co-founder of the PAT model checker. To this date, he has more than 200 journal articles or peer-reviewed conference papers, many of which are published at top-tier venues. His academic papers have won many international conference awards, and he is also the organizer of many international conferences.
Concolic testing integrates concrete execution (e.g., random testing) and symbolic execution for test case generation. It is shown to be more cost-effective than random testing or symbolic execution sometimes. A concolic testing strategy is a function which decides when to apply random testing or symbolic execution, and if it is the latter case, which program path to symbolically execute. Many heuristics-based strategies have been proposed. It is still an open problem what is the optimal concolic testing strategy. In this talk, I will talk the framework we proposed to derive optimal concolic testing strategies, based on which we analyze existing heuristics and propose a new algorithm to approximate the optimal strategy.