Analysis of the Automatic Test Generation Tool: CREST

Ruidong Chen, Yu Luo, Ruixing Li, Xiaosong Zhang, Lingyun Ying · 2016

The CREST is an open source automatic test generation tool for C which based on Common Intermediate Language and Yices. One of its major advantages is that several heuristic search strategies are proposed to test larger programs. The success of CREST should be attributed to static instrumentation, concolic execution, and heuristic search. Thus, it's meaningful for software testing and vulnerability exploitation to analyze this software testing platform. The concolic execution is introduced briefly in the first. Then, the work flow of CREST, instrumentation and the solver is explained. In addition, the key structures used to store symbolic expression and heuristic search strategies are given. By giving examples of executing the single-file and multiple-files program, the execution performance of three common utilities from Busybox is analyzed at last. Through this project, we have learned limitations of CREST. Conclusion and future work provide a sense of direction of concolic execution in software testing.

Read the paper · More papers on PaperTik