advanced~4h
Testing the Persistence Layer — @DataJpaTest & Testcontainers
Verifying persistence-layer behavior against a mock, or an embedded database that isn't your real production engine, can pass a test while completely missing what actually happens in production — @DataJpaTest and Testcontainers are how you test against the real thing, reliably and automatically.
Learning objectives
- Explain why testing against an embedded database (H2) can pass while production (PostgreSQL/MySQL) behaves differently.
- Use Testcontainers to test persistence-layer behavior against a real database engine.
- Write tests for cascade behavior, N+1 query counts, and optimistic locking conflicts, not just happy-path save/find.
This is a Pro chapter
Sign in, then upgrade to Pro or Power to unlock this and the full Spring Ecosystem Mastery library.
Testing the Persistence Layer — @DataJpaTest & Testcontainers