Byte-Sized Design

Byte-Sized Design

Ebay doesn't use E2E testing for their APIs...

And keeps them backwards compatible.

Jun 19, 2023
∙ Paid

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

  1. You have a provider for an API

  2. You have consumers that call this API

  3. You have tests by the consumers for the API

  4. You have the provider translate those tests to a contract for the API

  5. 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.

Already a paid subscriber? Sign in
© 2025 Byte-Sized Design · Privacy ∙ Terms ∙ Collection notice
Start your SubstackGet the app
Substack is the home for great culture