Что эквивалентно правилу TestName в JUnit 5?

Как я могу получить название метода тестирования в JUnit 5?

Ответы

Ответ 1

TestInfo параметр типа TestInfo в вашем тестовом методе, и JUnit автоматически предоставит экземпляр этого метода:

@Test
void getTestInfo(TestInfo testInfo) { // Automatically injected
    System.out.println(testInfo.getDisplayName());
    System.out.println(testInfo.getTestMethod());
    System.out.println(testInfo.getTestClass());
    System.out.println(testInfo.getTags());
}

Вы можете получить имя метода тестирования (и больше) из экземпляра TestInfo как показано выше.

Ответ 2

Лично я предпочитаю использовать это:

System.out.println(Thread.currentThread().getStackTrace()[1].getMethodName());