Publication Type
Conference Paper
Version
acceptedVersion
Publication Date
10-2019
Abstract
Concolic testing is a test generation technique which works effectively by integrating random testing generation and symbolic execution. Existing concolic testing engines focus on numeric programs. Heap-manipulating programs make extensive use of complex heap objects like trees and lists. Testing such programs is challenging due to multiple reasons. Firstly, test inputs for such program are required to satisfy non-trivial constraints which must be specified precisely. Secondly, precisely encoding and solving path conditions in such programs are challenging and often expensive. In this work, we propose the first concolic testing engine called CSF for heap-manipulating programs based on separation logic. CSF effectively combines specification-based testing and concolic execution for test input generation. It is evaluated on a set of challenging heap-manipulating programs. The results show that CSF generates valid test inputs with high coverage efficiently. Furthermore, we show that CSF can be potentially used in combination with precondition inference tools to reduce the user effort.
Discipline
Information Security
Research Areas
Cybersecurity
Publication
International Symposium on Formal Methods (FM 2019), Porto, Portugal, 2019 October 7-11
Publisher
Barclays Research
City or Country
Porto, Portugal
Citation
PHAM, Long H.; LOC LE, Quang; PHAN, Quoc-Sang; and SUN, Jun.
Concolic testing heap-manipulating programs. (2019). International Symposium on Formal Methods (FM 2019), Porto, Portugal, 2019 October 7-11.
Available at: https://ink.library.smu.edu.sg/sis_research/4638
Creative Commons License
This work is licensed under a Creative Commons Attribution-NonCommercial-No Derivative Works 4.0 International License.