Sunday, October 25, 2026 4,350 lists 78,100 records on file
List your app or device

  1. Home
  2. BDD Testing Tools
  3. JGiven

JGiven

What it is

JGiven is a free, open-source behavior-driven development framework for Java. It lets developers write scenarios in ordinary Java using a fluent domain-specific API, without another scenario language or IDE plugin. Scenarios run with JUnit or TestNG and need no separate test runner. Reusable stage classes can share state, helping limit repeated test code, while parameters on scenarios and steps support data-driven testing. During execution, JGiven creates plain-text and JSON reports. Its report generator turns the JSON into HTML that domain experts can read, and Maven and Gradle plugins are documented for report generation. Integrations are documented for Spring and Spock; Android support and JUnit 5 integration are experimental. Gherkin support is available, with local execution. Installation uses Java JARs on the classpath through tools such as Maven, Gradle, or Ant with Ivy. The project uses Apache License 2.0, was created by Jan Schäfer, and is mainly developed by TNG.

For and against

For

  • Uses standard Java instead of a separate scenario language
  • Runs with JUnit or TestNG
  • Produces plain-text, JSON, and HTML reports
  • Supports parameterized data-driven scenarios
  • Free under Apache License 2.0

Against

  • Android support is experimental
  • JUnit 5 integration is experimental
  • Runs locally rather than as a hosted service

The verdict

JGiven offers a Java-native way to write behavior-driven scenarios and generate reports for technical and domain readers. Its experimental integrations should be checked before relying on Android or JUnit 5 support.

Who it suits

JGiven suits Java teams building behavior-driven tests with JUnit or TestNG. It is useful when readable HTML reports and reusable test stages matter.

Plans and prices

JGiven

Free

Apache License 2.0 · open-source BDD framework for Java

Every plan, in full

On the record

Additional integrations
The user guide documents integrations for Spring and Spock, and experimental support for Android and JUnit 5.jgiven.org · read 4 Oct 2026
Build integrations
The user guide documents Maven and Gradle plugins for generating HTML reports.jgiven.org · read 4 Oct 2026
Data-driven testing
Scenarios and steps can be parameterized for data-driven tests.jgiven.org · read 4 Oct 2026
Experimental status
The user guide marks its Android support and JUnit 5 integration as experimental.jgiven.org · read 4 Oct 2026
Installation
JGiven is installed as a Java library using JARs on the classpath, commonly through Maven, Gradle, or Ant with Ivy.jgiven.org · read 4 Oct 2026
Latest listed release
The maker’s news page lists version 2.0.3, released September 26, 2025.jgiven.org · read 4 Oct 2026
License
The project is published under the Apache License 2.0.github.com · read 4 Oct 2026
Maintainer
JGiven was created by Jan Schäfer and is mainly developed by TNG, with contributions welcome.jgiven.org · read 4 Oct 2026
Purpose
JGiven is a pragmatic open-source behavior-driven development framework for Java.jgiven.org · read 4 Oct 2026
Report input
HTML reports are generated from JSON files produced during test execution.jgiven.org · read 4 Oct 2026
Reports
JGiven generates plain-text and JSON reports, and its report generator can produce HTML reports readable by domain experts.jgiven.org · read 4 Oct 2026
Reusable stages
Scenarios use reusable stage classes that can share state, helping reduce duplicated test code.jgiven.org · read 4 Oct 2026
Scenario authoring
Scenarios are written in standard Java with a fluent, domain-specific API, without requiring a separate language or IDE plugin.github.com · read 4 Oct 2026
Test frameworks
Scenarios can run with JUnit or TestNG without an extra test runner.jgiven.org · read 4 Oct 2026

Alternatives to JGiven

Every alternative, ranked