JUnit 5 — New Opportunities for Testing on the JVM
summary
Shows JUnit 5 as a rewritten, modular platform (Platform, Jupiter, Vintage) released GA in 2017 with 5.0.1/5.0.2 followups, requiring Java 8+, plus launcher, test engine API and console launcher that let Gradle/Maven/IDEs run multiple engines (JUnit 3/4 via Vintage and new engines for Scala/Kotlin). Demonstrates concrete features: parameterized tests, dependency injection into constructors and lifecycle methods, dynamic tests via lambdas, tagging, custom display names (emoji OK), assertThrows/assertTimeout replacements for rules, and tight integration with Spring Framework 5.
AI-written summary · about
chapters (33)
- 0:00Intro
- 0:15Sam Brannen
- 1:52Impetus for Change
- 2:29JUnit 4 Runner API
- 2:47JUnit 4... Rules... are meant to be broken
- 3:31JUnit Lambda - Crowdfunding Campaign
- 4:09Roadmap
- 4:32JUnit 5-in a Nutshell
- 5:21JUnit 5 - Java Versions
- 8:03Launcher API
- 9:05TestEngine API
- 10:03Third-party TestEngines
- 11:42IDEs and Build Tools
- 13:14JUnit Jupiter - Extension Model
- 15:32JUnit Jupiter - Programming Model
- 16:32Annotations
- 17:47JUnit 4 Rule Migration Support
- 18:31Assertions
- 27:40Custom Tags
- 28:08Composed Tags
- 28:43Test Names
- 29:09Dependency Injection
- 31:00Conditional Test Execution
- 37:14Interface Default Methods
- 39:05Nested Test Classes
- 40:58Repeated Tests
- 42:55Argument Conversion
- 46:27Dynamic Tests in Action
- 47:53What's Missing?
- 49:07Spring Support for JUnit Jupiter
- 50:27Configuring JUnit Jupiter with Spring
- 59:03Spring Boot 1.4+ & JUnit 5 - Custom Config
- 59:29Spring Boot 1.4+ & JUnit 5 - MockMvc Test








