This document introduces consumer-driven contract testing using Pact. It discusses problems with traditional unit, integration and end-to-end tests. Contract testing captures the interactions between a consumer and provider as tests. It registers expectations of the request and validates the response. This allows each component to be tested independently and improves test isolation, speed and reliability over other strategies. Pact is a framework for contract testing that supports multiple languages and platforms.