Welcome to JUnit Examples, a collection of example applications and extensions using JUnit Jupiter, JUnit Vintage, and the JUnit Platform on various build systems.
CI builds for example projects are performed by GitHub Actions. Using JDK 11+'s
jshell
tool, you may build all examples via the build-all-examples.jsh
script.
Basic setups showing how to get started with JUnit Jupiter.
The junit-jupiter-starter-ant example demonstrates the bare minimum configuration for getting started with JUnit Jupiter using the Ant build system.
The junit-jupiter-starter-gradle example demonstrates the bare minimum configuration for getting started with JUnit Jupiter using the Gradle build system.
The junit-jupiter-starter-gradle-kotlin example demonstrates the bare minimum configuration for getting started with JUnit Jupiter using the Gradle build system and the Kotlin programming language.
The junit-jupiter-starter-gradle-groovy example demonstrates the bare minimum configuration for getting started with JUnit Jupiter using the Gradle build system and the Groovy programming language.
The junit-jupiter-starter-maven example demonstrates the bare minimum configuration for getting started with JUnit Jupiter using the Maven build system.
The junit-jupiter-starter-maven-kotlin example demonstrates the bare minimum configuration for getting started with JUnit Jupiter project using Maven build system and Kotlin programming language.
The junit-jupiter-starter-bazel example demonstrates the bare minimum configuration for getting started with JUnit Jupiter using the Bazel build system.
The junit-jupiter-starter-sbt example demonstrates the bare minimum configuration for getting started with JUnit Jupiter using sbt and the Scala programming language.
Extending JUnit Jupiter using its Extension
API.
The junit-jupiter-extensions example demonstrates how one can implement custom JUnit Jupiter extensions and use them in tests.
More complex setups how to integrate various parts of "JUnit 5" including a possible migration path for JUnit 3 or 4 based projects.
The junit-migration-gradle example demonstrates how to set up a Gradle project using the JUnit Platform, JUnit Jupiter, and JUnit Vintage.
The junit-migration-maven example demonstrates how to set up a Maven project using the JUnit Platform, JUnit Jupiter, and JUnit Vintage.
Showing basic features of the JUnit Platform.
The junit-multiple-engines example demonstrates how to set up a Gradle project using the JUnit Platform with various TestEngine implementations.
The junit-modular-world example demonstrates how to test code organized in modules. This example also demonstrates how to implement a custom TestEngine for the JUnit Platform using the Java Platform Module System.