~/talk

JUnit 5: what's new and what's coming

Talkat Spring I/O 2019 · 2019-05-16..05-17· [testing]
slides:none on file

JUnit 5 is a ground‑up rewrite providing a Platform plus test engines (Jupiter for the new programming model, Vintage for JUnit 3/4), modular Java‑8+ support, and Spring integration that enables constructor and method injection in tests. New, concrete features: non‑public test classes, lambda-based assertThrows and assertTimeoutPreemptively, rich parameterized sources and dynamic tests, parallel execution since 5.3 (example: 11 Fibonacci invocations drop from ~10s to ~4s), and a migration path via the Vintage engine. Versions 5.0→5.4 released; 5.5 work in progress.

AI-written summary · about

  1. 0:00Intro
  2. 0:14Sam Brannen
  3. 4:55Java Versions
  4. 5:37IDEs and Build Tools
  5. 7:40More powerful Programming Model
  6. 8:40Example: Calculator Tests
  7. 9:55Timeouts
  8. 14:35Custom Tags
  9. 17:13Argument Conversion and Aggregation
  10. 19:41Dynamic Tests
  11. 22:30Configuring Parallelism (5.3)
  12. 23:09Execution Mode and Synchronization (5.3)
  13. 25:38New Extension Model
  14. 26:34Extension APIs - Lifecycle Callbacks
  15. 28:44DisplayNameGenerator (5.4)
  16. 30:15Conditional Test Execution
  17. 31:00Built-in Conditions (5.1)
  18. 32:22Annotations, Assertions, Assumptions
  19. 32:54JUnit 4 Rule Migration Support
  20. 33:32JUnit 4 lgnore and Assumption Support (5.4)
  21. 38:19Spring Support for JUnit Jupiter
  22. 39:19Configuring JUnit Jupiter with Spring
  23. 39:59Automatic Test Constructor Autowiring (5.2)
  24. 40:55Spring Boot 2.1 & JUnit Jupiter - Custom Config
  25. 41:51Spring Boot 2.1 & JUnit Jupiter - MockMvc Test
  26. 42:33Tip: Upgrading JUnit 5 Version in Spring Boot
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.