EVERYTHING XIAOMI
Get listed
jqwik logo

jqwik

jqwik is a free, open-source property-based testing library for JVM programmers using Java, Kotlin, or Groovy.

Place
#25 of 28
Score
5.3
jqwik's website

What jqwik is

jqwik is a free, open-source property-based testing library for JVM programmers using Java, Kotlin, or Groovy. You define a property and its precondition, then jqwik generates many qualifying parameter sets to search for counterexamples. Unless configured differently, each property runs with 1,000 generated sets. jqwik works as an alternative test engine on the JUnit 5 platform and can run beside other JUnit 5 engines. Failure reports may show the original and shrunk sample, property parameters, and relevant exception. Gradle and Maven setup guidance is provided, and the latest release is deployed to Maven Central. Listed modules include web, time, testing, and Kotlin; Kotlin is not included in default dependencies. Web and time examples cover email addresses, web domains, dates, and times. The documented minimum JUnit Platform version is 1.14.4. The site identifies 1.10.1 as latest and says versions from 1.10 are not intended for AI coding agents.

Good

  • Free and open source
  • Generates many values for each property
  • Runs alongside other JUnit 5 engines
  • Failure reports include shrunk samples
  • Gradle and Maven setup guidance

Watch out

  • Requires JUnit Platform 1.14.4 minimum
  • Kotlin module is not a default dependency
  • AI coding agent use is explicitly discouraged
  • No built-in mocks listed

Who it suits

jqwik suits JVM programmers writing property-based checks in Java, Kotlin, or Groovy. It fits projects already using JUnit 5 with Gradle or Maven.

Verdict

jqwik adds generated property checks and shrinking to JUnit 5 workflows. Its module setup and JUnit requirement should be checked, especially for Kotlin projects.

The facts

Each one read from jqwik's own pages, with the date it was checked.

What it does

Additional modules
The guide lists optional web and time modules, with examples including email address, web domain, date, and time generation.checked 10 Oct 2026
AI agent usage
The guide says jqwik is not meant for AI coding agents and describes a runtime message added to standard output.checked 11 Oct 2026
AI usage clause
Starting with version 1.10, the project says it is not meant to be used by AI coding agents and adds a message to test-engine output.checked 10 Oct 2026
Audience
The site describes jqwik as a library for programmers writing and running properties on the JVM.checked 10 Oct 2026
Available modules
The guide lists web, time, testing, and Kotlin modules; it says the Kotlin module is not included in jqwik’s default dependencies.checked 11 Oct 2026
Build integrations
The guide provides setup instructions for Gradle and Maven, and says the latest release is deployed to Maven Central.checked 10 Oct 2026
Build tools
The guide provides setup instructions for Gradle and Maven and says the latest release is deployed to Maven Central.checked 11 Oct 2026
Extension integrations
The site lists external extensions for Spring, Testcontainers, Vavr, and Micronaut, whose releases are not synchronized with jqwik’s releases.checked 11 Oct 2026
Failure reports
When a property fails, jqwik reports the relevant exception, base parameters, original failing sample, and shrunk sample.checked 11 Oct 2026
Generated tests
By default, jqwik runs a property 1,000 times with different generated parameter sets unless configured otherwise.checked 11 Oct 2026
Generated values
By default, a property runs 1,000 generated parameter sets unless configured otherwise.checked 10 Oct 2026
JUnit requirement
The documented minimum required JUnit Platform version is 1.14.4.checked 11 Oct 2026
Maintainer
The site says jqwik is maintained by jqwik-team.checked 11 Oct 2026
Maintainer contact
The project invites prospective long-term supporters, maintainers, or committers to contact [email protected].checked 11 Oct 2026
Property testing
It generates many sets of values satisfying a property’s precondition to try to falsify an incorrect assumption.checked 10 Oct 2026
Purpose
jqwik brings property-based testing to the JVM, focusing mainly on Java and Kotlin, with Groovy also supported.checked 11 Oct 2026
Release
The site identifies 1.10.1 as the latest release.checked 10 Oct 2026
Support channels
The contribution page directs users to Stack Overflow for questions and the GitHub issue tracker for bugs, ideas, and feature suggestions.checked 11 Oct 2026
Test engine
jqwik is an alternative test engine for the JUnit 5 platform and can run alone or alongside other JUnit 5 engines.checked 11 Oct 2026

Alternatives to jqwik

All alternatives
  1. 1fast-check logo

    fast-check

    Free planOpen sourceWebAPILinuxSelf-hosted
    7.1Free plan
  2. 2

    ScalaCheck

    Free planLinuxmacOSWindows
    6.6Free plan
  3. 3

    Gopter

    Free planLinuxSelf-hosted
    6.4Free plan
  4. 4

    JSVerify

    Free planWebSelf-hosted
    6.4Free plan
  5. 5

    Racket QuickCheck

    Free planLinuxmacOSWindows
    6.4Free plan
  6. 6

    FsCheck

    Free planLinuxmacOSWindows
    6.3Free plan