practice

Provider Verification

The provider-side stage that replays every consumer's recorded expectations against the real implementation.

testingcontractsci

The half that gives contract testing its value. Consumer tests alone prove only that the consumer works against a mock; verification proves the provider actually satisfies it.

What it needs to work in practice:

Provider states. An expectation such as "GET /orders/123 returns a shipped order" requires the provider to set up that state before replaying. These state handlers are the main implementation cost.

Versioning and environment tags, so the provider verifies against the consumer versions currently deployed rather than every version ever recorded — otherwise the build is blocked by an expectation from a consumer retired last year.

Can-I-deploy checks, gating deployment on whether the versions about to be released are compatible with what is live on the other side.

The result is that integration compatibility is verified without an integration environment, which is the main reason the practice exists.