Контрактні тести й Testcontainers: реалістичне тестування інтеграції
Коротко: Контрактні тести перевіряють, що сервіси дотримуються узгоджених інтерфейсів; Testcontainers запускають справжні бази даних і сервіси для тестів у Docker.
Докладніше: Між модульними тестами (ізольованими) та E2E-тестами (все разом) лежать інтеграційні тести: чи розуміють компоненти одне одного? Два інструменти роблять їх практичними.
Подробиці
Проблема
Моки брешуть: хто в тесті замінює базу даних моком…
Див. також: піраміда тестування, мокінг і тестові дублери, OpenAPI і Swagger, Docker