End-to-End Testing
End-to-end testing verifies a complete user workflow across an entire system — every layer from UI through backend services to the database and back — the way a real user would actually experience it. It's the highest-fidelity form of automated testing, and correspondingly the slowest and most expensive to run and maintain.
A typical end-to-end test might simulate: a user signing up, verifying their email, logging in, adding an item to a cart, checking out, and receiving a confirmation — touching the frontend, several backend services, a database, and possibly a third-party payment provider, all in one continuous test.
Because it's the slowest, most brittle layer to maintain, the test automation pyramid recommends keeping end-to-end tests to a relatively small number covering only the most critical user journeys, with unit and integration tests doing the bulk of the coverage underneath.