API Contract Testing

Coordinating loosely-coupled, distributed teams that develop microservices, comes down to agreeing on and enforcing a contract.

As each team continuously delivers each service, ideally multiple times a day, integration and end-to-end tests become unwieldy.

Rather than trying to tame the beast that is a distributed architecture, and bringing all the pieces together, simply document expectations so that breaking changes become apparent.

Pact provides a contract ‘between service consumers and providers, enabling consumer driven contract testing.”

This video from Atlassian gives a visual explanation of how this type of testing is integral to a successful microservices architecture.