Technology Radar TemplateTechnology Radar Template

PACT

This item was not updated in last three versions of the Radar. Should it have appeared in one of the more recent editions, there is a good chance it remains pertinent. However, if the item dates back further, its relevance may have diminished and our current evaluation could vary. Regrettably, our capacity to consistently revisit items from past Radar editions is limited.
Trial

At AOE we continue to use PACT but would like to use it even more. It therefore remains in the trial ring but was faded out from the overview page.

Trial

PACT (http://pact.io/) is a family of frameworks that provides support for Consumer Driven Contract testing across different languages and frameworks.

Consumer Driven Contract testing is a pattern for testing interfaces/boundaries between services.

It allows "consumers" to run tests against a defined Mock and record the defined interactions (=PACT). It puts "providers" in the position to run the PACT tests inside their Continuous Integration Pipelines, so that the provider knows if he might break any consumers.

This approach makes sense in organisations where teams collaborate more closely (See Strategic Domain Driven Design ), e.g. to build Microservice oriented architectures

Consumer Driven Contract Testing and how it can be conducted with PACT is documented very nicely on the official PACT website: https://docs.pact.io/.