Interface TestInfo
-
@API(status=STABLE, since="5.0") public interface TestInfoTestInfois used to inject information about the current test or container into to@Test,@RepeatedTest,@ParameterizedTest,@TestFactory,@BeforeEach,@AfterEach,@BeforeAll, and@AfterAllmethods.If a method parameter is of type
TestInfo, JUnit will supply an instance ofTestInfocorresponding to the current test or container as the value for the parameter.- Since:
- 5.0
- See Also:
Test,RepeatedTest,TestFactory,BeforeEach,AfterEach,BeforeAll,AfterAll,DisplayName,Tag
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description java.lang.StringgetDisplayName()Get the display name of the current test or container.java.util.Set<java.lang.String>getTags()Get the set of all tags for the current test or container.java.util.Optional<java.lang.Class<?>>getTestClass()Get theClassassociated with the current test or container, if available.java.util.Optional<java.lang.reflect.Method>getTestMethod()Get theMethodassociated with the current test or container, if available.
-
-
-
Method Detail
-
getDisplayName
java.lang.String getDisplayName()
Get the display name of the current test or container.The display name is either a default name or a custom name configured via
@DisplayName.Default Display Names
If the context in which
TestInfois used is at the container level, the default display name is generated based on the name of the test class. For top-level and@Nestedtest classes, the default display name is the simple name of the class. Forstaticnested test classes, the default display name is the default display name for the enclosing class concatenated with the simple name of thestaticnested class, separated by a dollar sign ($). For example, the default display names for the following test classes areTopLevelTests,NestedTests, andTopLevelTests$StaticTests.class TopLevelTests { @Nested class NestedTests {} static class StaticTests {} }If the context in which
TestInfois used is at the test level, the default display name is the name of the test method concatenated with a comma-separated list of simple names of the parameter types in parentheses. For example, the default display name for the following test method istestUser(TestInfo, User).@Test void testUser(TestInfo testInfo, @Mock User user) {}Note that display names are typically used for test reporting in IDEs and build tools and may contain spaces, special characters, and even emoji.
- Returns:
- the display name of the test or container; never
nullor blank
-
getTags
java.util.Set<java.lang.String> getTags()
Get the set of all tags for the current test or container.Tags may be declared directly on the test element or inherited from an outer context.
-
getTestClass
java.util.Optional<java.lang.Class<?>> getTestClass()
Get theClassassociated with the current test or container, if available.
-
getTestMethod
java.util.Optional<java.lang.reflect.Method> getTestMethod()
Get theMethodassociated with the current test or container, if available.
-
-