Module org.junit.jupiter.api
Package org.junit.jupiter.api
package org.junit.jupiter.api
JUnit Jupiter API for writing tests.
-
InterfaceDescription
ClassDescriptor
encapsulates functionality for a givenClass
.ClassOrderer
defines the API for ordering top-level test classes and@Nested
test classes.ClassOrdererContext
encapsulates the context in which aClassOrderer
will be invoked.DisplayNameGenerator
defines the SPI for generating display names programmatically.MethodDescriptor
encapsulates functionality for a givenMethod
.MethodOrderer
defines the API for ordering the test methods in a given test class.MethodOrdererContext
encapsulates the context in which aMethodOrderer
will be invoked.Named<T>Named
is a container that associates a name with a given payload.RepetitionInfo
is used to inject information about the current repetition of a repeated test into@RepeatedTest
,@BeforeEach
, and@AfterEach
methods.TestInfo
is used to inject information about the current test or container into to@Test
,@RepeatedTest
,@ParameterizedTest
,@TestFactory
,@BeforeEach
,@AfterEach
,@BeforeAll
, and@AfterAll
methods.Parameters of typeTestReporter
can be injected into@BeforeEach
and@AfterEach
lifecycle methods as well as methods annotated with@Test
,@RepeatedTest
,@ParameterizedTest
,@TestFactory
, etc. -
ClassDescription
Assertions
is a collection of utility methods that support asserting conditions in tests.Assumptions
is a collection of utility methods that support conditional test execution based on assumptions.ClassOrderer
that sorts classes alphanumerically based on their fully qualified names usingString.compareTo(String)
.ClassOrderer
that sorts classes alphanumerically based on their display names usingString.compareTo(String)
ClassOrderer
that sorts classes based on the@Order
annotation.ClassOrderer
that orders classes pseudo-randomly.DisplayNameGenerator
that generates complete sentences.DisplayNameGenerator
that replaces underscores with spaces.SimpleDisplayNameGenerator
that removes trailing parentheses for methods with no parameters.StandardDisplayNameGenerator
.ADynamicContainer
is a container generated at runtime.DynamicNode
serves as the abstract base class for a container or a test case generated at runtime.ADynamicTest
is a test case generated at runtime.Deprecated.MethodOrderer
that sorts methods alphanumerically based on their display names usingString.compareTo(String)
MethodOrderer
that sorts methods alphanumerically based on their names usingString.compareTo(String)
.MethodOrderer
that sorts methods based on the@Order
annotation.MethodOrderer
that orders methods pseudo-randomly. -
Annotation InterfaceDescription
@AfterAll
is used to signal that the annotated method should be executed after all tests in the current test class.@AfterEach
is used to signal that the annotated method should be executed after each@Test
,@RepeatedTest
,@ParameterizedTest
,@TestFactory
, and@TestTemplate
method in the current test class.@BeforeAll
is used to signal that the annotated method should be executed before all tests in the current test class.@BeforeEach
is used to signal that the annotated method should be executed before each@Test
,@RepeatedTest
,@ParameterizedTest
,@TestFactory
, and@TestTemplate
method in the current test class.@Disabled
is used to signal that the annotated test class or test method is currently disabled and should not be executed.@DisplayName
is used to declare a custom display name for the annotated test class or test method.@DisplayNameGeneration
is used to declare a custom display name generator for the annotated test class.@IndicativeSentencesGeneration
is used to register theDisplayNameGenerator.IndicativeSentences
display name generator and configure it.@Nested
is used to signal that the annotated class is a nested, non-static test class (i.e., an inner class) that can share setup and state with an instance of its enclosing class.@Order
is an annotation that is used to configure the order in which the annotated element (i.e., field, method, or class) should be evaluated or executed relative to other elements of the same category.@RepeatedTest
is used to signal that the annotated method is a test template method that should be repeated a specified number of times with a configurable display name.@Tag
is a repeatable annotation that is used to declare a tag for the annotated test class or test method.@Tags
is a container for one or more@Tag
declarations.@Test
is used to signal that the annotated method is a test method.@TestClassOrder
is a type-level annotation that is used to configure aClassOrderer
for the@Nested
test classes of the annotated test class.@TestFactory
is used to signal that the annotated method is a test factory method.@TestInstance
is a type-level annotation that is used to configure the lifecycle of test instances for the annotated test class or test interface.@TestMethodOrder
is a type-level annotation that is used to configure aMethodOrderer
for the test methods of the annotated test class or test interface.@TestTemplate
is used to signal that the annotated method is a test template method.@Timeout
is used to define a timeout for a method or all testable methods within one class and its@Nested
classes.
MethodOrderer.MethodName
; to be removed in 6.0