What problem does it solve? Choosing the right Spring Boot testing technique is confusing: developers often overuse @SpringBootTest, test against H2 instead of real databases, or mix up deprecated and current APIs. This Skill maps each testing scenario to the correct slice annotation and tooling for a Spring Boot 3.3 + JUnit 5 stack. ## Core Features & Use Cases - Test slice selection: Decision matrix and tree for @WebMvcTest, @DataJpaTest, @RestClientTest, @JsonTest, and @SpringBootTest, so you always use the narrowest slice that gives confidence. - Real-database testing: Testcontainers setup for running @DataJpaTest and integration tests against PostgreSQL 16 instead of H2. - Assertion and mocking guidance: AssertJ fluent assertions for scalars and collections, Mockito patterns with @MockBean, and Instancio for generating complex test fixtures. - Version boundary clarity: Clearly marks Spring Boot 3.4+/4.0 APIs (MockMvcTester, @MockitoBean, RestTestClient) as out of scope, with a migration reference for future upgrades. - Use Case: You need to test a JPA repository query. The Skill directs you to @DataJpaTest with a PostgreSQL Testcontainers container, TestEntityManager for data setup, and AssertJ assertions, producing a ready-to-adapt test template. ## Quick Start Ask the assistant which Spring Boot test slice to use for your controller, repository, or REST client scenario and request a complete test example.