English

A Case Study on Automated Fuzz Target Generation for Large Codebases

Software Engineering 2019-07-30 v1

Abstract

Fuzz Testing is a largely automated testing technique that provides random and unexpected input to a program in attempt to trigger failure conditions. Much of the research conducted thus far into Fuzz Testing has focused on developing improvements to available Fuzz Testing tools and frameworks in order to improve efficiency. In this paper however, we instead look at a way in which we can reduce the amount of developer time required to integrate Fuzz Testing to help maintain an existing codebase. We accomplish this with a new technique for automatically generating Fuzz Targets, the modified versions of programs on which Fuzz Testing tools operate. We evaluated three different Fuzz Testing solutions on the codebase of our industry partner and found a fully automated solution to result in significantly more bugs found with respect to the developer time required to implement said solution. Our research is an important step towards increasing the prevalence of Fuzz Testing by making it simpler to integrate a Fuzz Testing solution for maintaining an existing codebase.

Keywords

Cite

@article{arxiv.1907.12214,
  title  = {A Case Study on Automated Fuzz Target Generation for Large Codebases},
  author = {Matthew Kelly and Christoph Treude and Alex Murray},
  journal= {arXiv preprint arXiv:1907.12214},
  year   = {2019}
}

Comments

to appear as industry track paper at ESEM 2019, the 13th International Symposium on Empirical Software Engineering and Measurement

R2 v1 2026-06-23T10:33:23.171Z