Contract testing is now a whole lot easier.
Get more of your team involved and use your favourite tools to see the ROI faster.
Already loved by
Consumer Driven Contract Testing is the new industry standard approach to testing distributed systems. Now, with Bi-Directional Contract Testing, PactFlow customers get access to new modes of contract capture and compliance, a broader set of use cases, and a simplified developer experience.
Simpler approach lowers the barrier to getting started
Reuse existing tools and tests to scale contract testing rapidly across your systems
More of the team can join - QAs, SDETs, testers and more
Design first, API first, consumer or provider driven - you choose
Supports additional use cases not supported by Pact
See value and ROI of contract testing faster
Upgrade the tools you love into a powerful contract testing solution
View all integration examplesHere's what our customers have to say about Bi-Directional Contract Testing:
”After our evaluation, we concluded that Bi-Directional tests could reduce developer effort by >50% when compared to Consumer-Driven tests for our client’s Provider services. Based on these figures, PactFlow will accelerate our adoption of contract testing and reduce future maintenance concerns.”
”Bi-Directional Contract Testing makes it easier to verify API contracts, helps in early fault detection and enables more team involvement towards 'shift left' testing. We're now getting more value from PactFlow in terms of saving time maintaining end-to-end tests and being able to move faster.”
”With bi-directional contract testing you’re able to use contract testing without heavily relying on the consumer maintainers. Plus you can forget about having to support provider states for your consumers so that teams can be truly independent for their testing processes.”
”Think of consumer driven contract testing, but also being able to run that flow from the provider end too! It allows for easier independent deployability, previously, I would have to test both consumer and provider at the same time, which creates a dependency on the provider codebase needing to be integrated into CI process, but with bi-directional contract testing I can test the integration easily and quickly in isolation.”
No, this feature is exclusive to PactFlow.
With Bi-Directional Contract Testing, you can keep using the tools you use today.
For consumer tests, you can choose to BYO your own API mocking tool or use Pact. Common mocking tools you can use to capture a contract include:
If you can programmatically access your mocks, you can generate a pact file from it.
For provider tests, we support providers documented with an OpenAPI (OAS). You must ensure that your OAS is compatible with your code. OAS has a rich ecosystem of tools you can use to verify your provider, such as:
We will be launching with support for the following contract types:
Our roadmap includes expanding support to other formats, including:
With Bi-Directional Contract Testing, you can choose the type of testing methodology that works best for your team. This means you can use Pact, bi-directional or both.
For example, you might find that using Bi-Directional Contract Testing is a good approach for retrofitting onto existing systems to get rapid value, but may prefer to use Pact contract testing on green fields projects that you're actively working on.
Bi-directional contracts expands the roles of test authors beyond Developers, to Testers, QAs and SDETs.
Typically, Developers and SDETs can write Pact tests as they have access to the underlying code base, written as unit tests (white-box tests).
Testers, QA engineers and others who don’t have direct access to the code and want to test from the outside (as a black-box test) can now use schema and code-based contract tests, using tools and techniques they are familiar with.
Visit our documentation where you can find more detail about the feature, hands-on workshops and example projects.
You can also find support in the #pactflow channel in the Pact Slack workspace (sign up).