Test-driven development with Java : create higher-quality software by writing test first with SOLID and hexagonal architecture - Mellor, Alan (Packt, 2023)