Forem Core

Around IT In 256 Seconds

#58: Consumer-driven Contracts: TDD between services

Consumer-driven Contracts is an approach to testing integration between services. In a distributed system, many components talk to each other. Typically via request/response protocols or message queues. The client must know and understand the API provided by the server. What kind of endpoints are available, what formats, request/response schema. Without consumer-driven contracts (CDC for short), we are often reckless when it comes to testing. Maybe we have a bunch of smoke tests against a mocked server. Maybe we copy-paste typical responses from the serverโ€™s documentation. But both client and server can evolve, breaking the integration in unexpected ways. CDC attempts to codify the API without explicit schema and coordination.

Read more: https://nurkiewicz.com/58

Get the new episode straight to your mailbox: https://nurkiewicz.com/newsletter

Episode source