Projektowanie systemu rozproszonego, opartego np. o architekturę mikroserwisową, zwykle nie jest trywialne. Pojawia się tu choćby problem komunikacji poszczególnych części systemu i adekwatnego sposobu jej testowania...
Wspólnie z moim dzisiejszym gościem, Rafałem Maciakiem, przyglądamy się idei testowania kontraktowego, które świetnie rozwiązuje problem testowania poprawności komunikacji pomiędzy konsumentami i producentami. Co istotne, w izolacji, bez konieczności używania kosztowych środowisk i testów integracyjnych.
W tym odcinku rozmawiamy m.in. o:
- idei testowania kontraktowego,
- przykładowej budowie kontraktów,
- lokalizacji tego rodzaju weryfikacji w piramidzie testów,
- narzędziach wspierających testowanie kontraktowe,
- różnicach pomiędzy Consumer Driven Contract i Producer Driven Contract,
Materiały dodatkowe:
- Contract Testing - Spring Cloud Contract, artykuł Rafała na blogu SoftwareMill przedstawiający praktyczną stronę testowania kontraktowego z użyciem Springa,
- Save your friday's evening with Contract Testing, prezentacja Rafała z Allegro Tech Meetings
- Spring Cloud Contract in a polyglot world, artykuł Marcina Grzejszczaka na blogu Spring, pokazujący praktyczne użycie SCC,
- How Pact Works, krótkie wprowadzenie do zasady działania jednego ze wspomnianych w odcinku narzędzi
- Can I Deploy, jedno z narzędzi wchodzących w skład Pacta, wspomagające proces wdrożenia systemu
- Introducing Contact Testing with PactFlow, playlista kilku ciekawych filmów przedstawiających użycie Pacta w omawianym w odcinku kontekście
Zapraszam Cię także do odwiedzenia moich innych miejsc w internecie: