Module org.junit.jupiter.api
Package org.junit.jupiter.api
package org.junit.jupiter.api
JUnit Jupiter API for writing tests.
-
ClassDescription
@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.Builder forAssertionFailedErrors
.Assertions
is a collection of utility methods that support asserting conditions in tests.Assertions.TimeoutFailureFactory<T extends Throwable>Factory for timeout failures.Assumptions
is a collection of utility methods that support conditional test execution based on assumptions.@AutoClose
is used to indicate that an annotated field will be automatically closed after test execution.@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.ClassDescriptor
encapsulates functionality for a givenClass
.ClassOrderer
defines the API for ordering top-level test classes and@Nested
test classes.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.ClassOrdererContext
encapsulates the context in which aClassOrderer
will be invoked.@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.DisplayNameGenerator
defines the SPI for generating display names programmatically.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.@IndicativeSentencesGeneration
is used to register theDisplayNameGenerator.IndicativeSentences
display name generator and configure it.MethodDescriptor
encapsulates functionality for a givenMethod
.MethodOrderer
defines the API for ordering the test methods in a given test class.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.MethodOrdererContext
encapsulates the context in which aMethodOrderer
will be invoked.Named<T>Named
is a container that associates a name with a given payload.NamedExecutable
joinsExecutable
andNamed
in a one self-typed functional interface.@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 and an optional failure threshold.RepetitionInfo
is used to inject information about the current repetition of a repeated test into@RepeatedTest
,@BeforeEach
, and@AfterEach
methods.@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.TestInfo
is used to inject information about the current test or container into to@Test
,@RepeatedTest
,@ParameterizedTest
,@TestFactory
,@BeforeEach
,@AfterEach
,@BeforeAll
, and@AfterAll
methods.@TestInstance
is a type-level annotation that is used to configure the lifecycle of test instances for the annotated test class or test interface.Enumeration of test instance lifecycle modes.@TestMethodOrder
is a type-level annotation that is used to configure aMethodOrderer
for the test methods of the annotated test class or test interface.Parameters of typeTestReporter
can be injected into@BeforeEach
and@AfterEach
lifecycle methods as well as methods annotated with@Test
,@RepeatedTest
,@ParameterizedTest
,@TestFactory
, etc.@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.ThreadMode
is use to define whether the test code should be executed in the thread of the calling code or in a separated thread.
MethodOrderer.MethodName
; to be removed in 6.0