Ebay doesn't use E2E testing for their APIs...
And keeps them backwards compatible.
TLDR;
Ebay has API’s and sometimes they need to get updated. They also need to be backwards compatible.
To make API changes easier, they used “contract testing” which means consumers give the API tests and the APIs need to pass those tests before making updates.
Give me the Problem Deets (Details)
Ebay has a lot of APIs and needs to update them… regularly. The problem is that updating APIs means you also need to be backwards compatible.
One way of doing this is by running a ton of E2E tests for new APIs and ensuring they all succeed.
Except doing that is slow and inefficient and flaky and problematic. So Ebay turned to Contract Testing .
WTF is Contract Testing?
Here’s the simple breakdown how contract testing works
You have a provider for an API
You have consumers that call this API
You have tests by the consumers for the API
You have the provider translate those tests to a contract for the API
You make changes to the API and all the verification tests for the contract must pass.
Keep reading with a 7-day free trial
Subscribe to Byte-Sized Design to keep reading this post and get 7 days of free access to the full post archives.

