Что такое Ports and Adapters в контексте тестирования?

Senior
246 просмотров
AFK Offer AI

Главный бонус Hexagonal Architecture для тестирования: можно подменять любой адаптер. Unit tests бизнес-логики — подменяем driven ports (DB, email) in-memory реализациями, никаких моков Spring, просто Java. Integration tests — реальная DB (Testcontainers) но тестируем один адаптер. E2E — полный стек. Это даёт fast unit tests без Spring context, которые проверяют именно бизнес-логику. ApplicationPort → InMemoryPortImpl в тестах вместо реального DbPortImpl.

Следующий вопрос

Что нового в switch expressions?