← Browse all tools

Go Back
Report Abuse

JQF

Coverage-guided semantic fuzzing for Java

Tool overview

JQF is a feedback-directed fuzz testing platform for Java, comparable to AFL or libFuzzer but for JVM bytecode. It uses the abstraction of property-based testing, so fuzz drivers are written as parameterised JUnit test methods.

Fuzz tests run under JUnit 4 or JUnit 5, and test arguments are produced by a pluggable generator provider, junit-quickcheck by default. JQF runs these tests with coverage-guided fuzzing algorithms such as Zest, which biases fuzzing towards semantically valid inputs that satisfy structural and semantic properties, to find deep semantic bugs that conventional fuzzers miss. It is driven through a Maven plugin or command-line scripts.

JQF comes from academic research at UC Berkeley and Carnegie Mellon University and is free and open source under the BSD 2-Clause licence.

Screenshots & video

Community reviews

Login to Write Your Review

There are no reviews yet.

Source & attribution

Original contributor
Jean-Baptiste CROUIGNEAU
External references
https://github.com/rohanpadhye/JQF