Title :
Industrial application of concolic testing approach: A case study on libexif by using CREST-BV and KLEE
Author :
Kim, Yunho ; Kim, Moonzoo ; Kim, YoungJoo ; Jang, Yoonkyu
Author_Institution :
CS Dept., KAIST, Daejeon, South Korea
Abstract :
As smartphones become popular, manufacturers such as Samsung Electronics are developing smartphones with rich functionality such as a camera and photo editing quickly, which accelerates the adoption of open source applications in the smartphone platforms. However, developers often do not know the detail of open source applications, because they did not develop the applications themselves. Thus, it is a challenging problem to test open source applications effectively in short time. This paper reports our experience of applying concolic testing technique to test libexif, an open source library to manipulate EXIF information in image files. We have demonstrated that concolic testing technique is effective and efficient at detecting bugs with modest effort in industrial setting. We also compare two concolic testing tools, CREST-BV and KLEE, in this testing project. Furthermore, we compare the concolic testing results with the analysis result of the Coverity Prevent static analyzer. We detected a memory access bug, a null pointer dereference bug, and four divide-by-zero bugs in libexif through concolic testing, none of which were detected by Coverity Prevent.
Keywords :
program debugging; program testing; public domain software; smart phones; CREST-BV; EXIF information; KLEE; bugs detection; concolic testing approach; coverity prevent static analyzer; divide-by-zero bugs; libexif; memory access bug; null pointer dereference bug; open source applications; open source library; smartphones; Cameras; Computer bugs; Concrete; Instruments; Search problems; Smart phones; Testing;
Conference_Titel :
Software Engineering (ICSE), 2012 34th International Conference on
Conference_Location :
Zurich
Print_ISBN :
978-1-4673-1066-6
Electronic_ISBN :
0270-5257
DOI :
10.1109/ICSE.2012.6227105