JOURNAL ARTICLE

AFL2oop: Loop Coverage Guided Greybox Fuzz Testing

Haochen JinLiwei ZhengZhanqi Cui

Year: 2023 Journal:   Proceedings/Proceedings of the ... International Conference on Software Engineering and Knowledge Engineering Vol: 2023 Pages: 250-255

Abstract

Fuzz testing automatically generates and executes test cases, to detect more defects by covering more logical and state spaces of the program under test (PUT).However, it becomes more difficult to adequately test the PUT with increasing size and code complexity.Studies have shown that complex code is more likely to contain defects, and the loop is one of the main reasons for increased code complexity.Therefore, it is necessary to thoroughly test the loops, but existing fuzzers cannot focus on the loops of the PUT.To address this issue, we design a loop interval coverage metric to measure the testing adequacy of the loop.Additionally, we propose a greybox fuzz testing approach named AFL 2 oop (AFL for Loop), which uses loop coverage as guidance.First, we analyze the loops of the PUT and expand the bitmap.Then, fuzz testing is guided by loop interval coverage and branch coverage.A prototype tool is implemented based on the proposed method, and experiments are carried out on four real-world software programs, such as LibXml2, LibMing, etc.The results show that AFL 2 oop achieves higher coverage, triggers more crashes, and reproduces defects faster than AFL and FairFuzz.

Keywords:
Code coverage Computer science Fuzz testing Loop (graph theory) Test case White-box testing Loop tiling Metric (unit) Model-based testing Programming language Code (set theory) For loop Algorithm Theoretical computer science Software Set (abstract data type) Software development Machine learning Mathematics Software construction

Metrics

0
Cited By
0.00
FWCI (Field Weighted Citation Impact)
30
Refs
0.12
Citation Normalized Percentile
Is in top 1%
Is in top 10%

Topics

Software Testing and Debugging Techniques
Physical Sciences →  Computer Science →  Software
Software Reliability and Analysis Research
Physical Sciences →  Computer Science →  Software
Software Engineering Research
Physical Sciences →  Computer Science →  Information Systems
© 2026 ScienceGate Book Chapters — All rights reserved.