Published January 8, 2024 | Version v1
Software Open

Replication Package for "Mind the Gap: What Working With Developers on Fuzz Tests Taught Us About Coverage Gaps"

  • 1. Technische Universiteit Delft

Contributors

Description

Replication Package for Fuzzing-based Tests as Inspiration for Developers

Welcome to our replication package :)
In here we provide the scripts and instructions that we used to generate the fuzzing-based test fixtures and the corresponding Bugzilla reports.

Central here is `injector.py`, responsible for locating the instrumentation locations based on the coverage gaps, and instrumenting the code while respecting our filter ignoring less relevant coverage gaps (single lines and early returns).

To run these scripts, you will also need a python installation, and a checkout of the `mozilla-unified` repository with the Firefox source code.

As the Firefox source code is constantly developing, chances are good that the specific fixes to make this run are no longer up to date and need to be adapted by you.
This includes the filter & instrumentation false positives (some instrumentation locations make the browser crash before starting the fuzzer).
We provide the two CI coverage files for the two relevant runs we conducted (to generate the initial Bugzilla reports (`ci-coverage-january.json`), to generated the tests for the filtered coverage gaps to discuss with the developers (`ci-coverage-april.json`)), as they are no longer available to download from the CI server.

Files

moz-fuzz-inspiration.zip

Files (12.3 MB)

Name Size Download all
md5:9f16191e4da6217a488207cf6967110a
12.3 MB Preview Download