ContractCase
case.contract-testing.io
Spec sheet
- Purpose
- ContractCase is a consumer-driven contract testing framework for checking whether services can communicate as expected.Read 8 Oct 2026 · case.contract-testing.io
- Broker integration
- ContractCase supports the Pact Broker, while its contracts are not rendered in the Pact Broker UI; the documentation also describes Pactflow as a SaaS broker option.Read 8 Oct 2026 · github.com
- Broker integrations
- ContractCase supports the Pact contract broker and identifies Pactflow as a SaaS broker option.Read 8 Oct 2026 · case.contract-testing.io
- Broker limitation
- The documentation says the Pact broker cannot render ContractCase contracts in its UI.Read 8 Oct 2026 · github.com
- Broker use
- The documentation says a broker records contract files, verification status, and deployment environment information, and is needed for deployment confidence.Read 8 Oct 2026 · case.contract-testing.io
- Contract definition
- Contracts are defined on the side of the communication boundary that consumes information and later verified on the side that provides it.Read 8 Oct 2026 · case.contract-testing.io
- Contract lifecycle
- Its workflow covers defining contracts, verifying them against providers, and checking compatibility at deployment time.Read 8 Oct 2026 · case.contract-testing.io
- Contract merging limit
- ContractCase does not currently support merging contracts, so each contract must be defined in one test file.Read 8 Oct 2026 · github.com
- Contract types
- The project says it supports contracts for HTTP clients, HTTP servers, function callers, and function implementations.Read 8 Oct 2026 · github.com
- Contract workflow
- It defines contracts against a mock provider, then verifies those contracts against the real provider.Read 8 Oct 2026 · case.contract-testing.io
- Deploy checks
- The CLI can check whether a service is safe to deploy based on verification results and the target environment.Read 8 Oct 2026 · case.contract-testing.io
- Downloads
- The official site links to npm and Maven Central as download locations.Read 8 Oct 2026 · case.contract-testing.io
- Example-based interactions
- A contract consists of interactions defined by example, and each interaction runs independently during contract definition.Read 8 Oct 2026 · case.contract-testing.io
- Extensibility
- Plugins can add matcher types, mock types, and DSL declarations; plugins are written in JavaScript or TypeScript compiled to JavaScript.Read 8 Oct 2026 · case.contract-testing.io
- Notable limitation
- ContractCase does not currently support merging contracts, so each contract must be defined in one test file.Read 8 Oct 2026 · github.com
- Package availability
- The project links to npm and Maven Central for downloads.Read 8 Oct 2026 · case.contract-testing.io
- Plugin language
- Plugins must be written in JavaScript or TypeScript compiled to JavaScript.Read 8 Oct 2026 · case.contract-testing.io
- Release status
- The project states that versions before 1.0.0 are beta and that breaking changes may occur in minor releases.Read 8 Oct 2026 · case.contract-testing.io
- Stability
- ContractCase is in beta before version 1.0.0, and its API may have breaking changes in minor version bumps.Read 8 Oct 2026 · case.contract-testing.io
- Support channel
- The project directs users to report bugs through GitHub.Read 8 Oct 2026 · case.contract-testing.io
- Support route
- The official site links users to GitHub to report a bug.Read 8 Oct 2026 · case.contract-testing.io
- Supported contract types
- The project README lists HTTP clients, HTTP servers, function callers, and function implementations.Read 8 Oct 2026 · github.com
- Test framework support
- The project README lists compatibility with Jest and Vitest for JavaScript or TypeScript and JUnit for Java.Read 8 Oct 2026 · github.com
- Test runners
- The project README lists Jest and Vitest for JavaScript or TypeScript, and JUnit for Java, as compatible test frameworks.Read 8 Oct 2026 · github.com
- Verification behavior
- By default, failed contract verification does not throw an error; users can set `throwOnFail: true` to change this behavior.Read 8 Oct 2026 · case.contract-testing.io
Where Specifiction places it
- Contract Testing Tools#17 of 227.5