What problem does it solve? Writing consistent, well-isolated unit tests for Java business logic is hard to standardize across a team. This Skill codifies JUnit 5 best practices so every test follows the same structure, naming, isolation, and traceability conventions. ## Core Features & Use Cases - Standardized Test Structure: Enforces the Arrange-Act-Assert pattern, descriptive test naming, lifecycle annotations (@BeforeEach, @BeforeAll), and @DisplayName usage. - Parameterized & Data-Driven Tests: Guides the use of @ValueSource, @CsvSource, @CsvFileSource, @MethodSource, and @EnumSource to cover boundary values and edge cases. - Isolation with Mockito and AssertJ: Applies @Mock and @InjectMocks for dependency isolation and fluent AssertJ assertions for readable failures, plus REQ-ID traceability comments. - Use Case: When modernizing a legacy payment system to Java 21, ask the AI to write unit tests for a tax calculation service and receive tests that are isolated, parameterized, and traceable to requirements. ## Quick Start Write JUnit 5 unit tests for this service class using Mockito to isolate its dependencies and parameterized tests to cover the boundary values.