Automatische Tests dank Consumer Driven Contract Testing

Gerade in großen Microservice-Landschaften sind End-to-End-Tests in der Regel nur mit hohem Aufwand zu realisieren. Sie beschränken sich daher oft auf den Happy-Path. Randfälle werden dann gar nicht service-übergreifend getestet.

Eine sehr gute Alternative zu End-to-End-Tests bieten Consumer-Driven Contract Tests, mit denen es möglich ist, einzelne Services (oder Frontends) unabhängig zu testen, und dennoch sicher zu sein, dass sie mit dem Rest der Landschaft kompatibel sind.

Mit wenig Slides und viel Code demonstriere ich in dieser Session, was Consumer-Driven Contract Testing ist und wie mit ihnen über eine Continuous Deployment Pipeline und einem Pact-Broker sichergestellt werden kann, dass auf allen Stages nur Services deployt werden (können), deren Schnittstellen kompatibel sind.

Vorkenntnisse

RESTful API Design, Unit-Testing, CI/CD

Lernziele

Wie kann Consumer Driven Contract Testing eingesetzt werden, um in der CI/CD-Pipeline sicherzustellen, dass Consumer und Provider auf jeder Stage kompatibel sind.

Speaker

 

Arne Limburg
Arne Limburg ist Lead Architect bei der open knowledge GmbH in Oldenburg. Er verfügt über mehrjährige Erfahrung als Architekt, Trainer und Coach im Enterprise- und Microservices-Umfeld. Zu diesen Bereichen spricht er regelmäßig auf Konferenzen und führt Workshops durch. Darüber hinaus ist er im Open-Source-Bereich tätig, unter anderem als PMCMember von Apache Meecrowave und Apache OpenWebBeans.

betterCode-Newsletter

Du möchtest über die betterCode() API und weitere unserer betterCode()-Events auf dem Laufenden gehalten werden?

 

Anmelden