Migration zu JUnit 5 in 10 min. Testzeit mit Extensions messen

Hallo!

In einem kürzlich durchgeführten Spring 5 / JPA Enterprise (Topjava) -Praktikum wurde unser Schulungsprojekt von JUnit 4 auf JUnit 5.2 migriert. Der Hauptmigrationsprozess ist ziemlich einfach, aber es gibt einige Nuancen, die manuelle Eingriffe erfordern. Ich möchte kurz über sie und die Erstellung von JUnit 5-Erweiterungen sprechen, um die Testzeit in einem 10-minütigen Video zu messen.


Erweiterungscode zur Messung der Testzeit
import org.junit.jupiter.api.extension.*; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.util.StopWatch; public class TimingExtension implements BeforeTestExecutionCallback, AfterTestExecutionCallback, BeforeAllCallback, AfterAllCallback { private static final Logger log = LoggerFactory.getLogger("result"); private StopWatch stopWatch; @Override public void beforeAll(ExtensionContext ctx) { stopWatch = new StopWatch("Execution time of " + ctx.getRequiredTestClass().getSimpleName()); } @Override public void beforeTestExecution(ExtensionContext ctx) { log.info("Start stopWatch"); stopWatch.start(ctx.getDisplayName()); } @Override public void afterTestExecution(ExtensionContext ctx) { stopWatch.stop(); log.info("stop stopWatch"); } @Override public void afterAll(ExtensionContext ctx) { log.info('\n' + stopWatch.prettyPrint() + '\n'); } } 



Nützliche Links:



Vielen Dank für Ihre Aufmerksamkeit!

Ich hoffe, wenn Ihr Projekt JUnit 4 verwendet und Sie noch nicht auf JUnit 5 migriert sind, wird Sie dieses kurze Video inspirieren. Und auch über die Verwendung von JUnit 5 in Ihren neuen Projekten.

Source: https://habr.com/ru/post/de420891/


All Articles