end-to-end test

noun

An end-to-end test checks whether a complete user journey through an application works, including the components and systems that must work together.

The end-to-end test reports an error if a customer can place an order but receives no confirmation after payment.

An end-to-end test uses an application as a user would. It might start at a login screen, enter details, complete an order and check whether confirmation appears. The Glossary · In briefuser interfaceA user interface (UI) is the part of a digital system through which a user receives information and operates it. Examples include screens, buttons, forms and voice controls.Read more, Glossary · In briefbackendThe backend is the part of an application that processes data, applies business rules and communicates with other systems on the server. Users usually access it through a frontend or API.Read more, Glossary · In briefdatabaseA database is a structured collection of data that software can store, retrieve and modify. A database management system controls access to that data.Read more and external services can all be part of the same journey.

What does an end-to-end test check?

The test mainly checks whether components work together throughout a complete flow. An individual function can be correct and an integration can pass its own checks, while the overall process still fails because of incorrect configuration, missing permissions or unexpected data. An end-to-end test can reveal such problems by running the journey from start to finish.

A reliable test runs in an environment sufficiently similar to real use. Which components actually participate depends on the test's purpose. An external payment service might be replaced with a controlled test environment. This makes the result repeatable but does not fully test the real payment service.

When should you use this test?

End-to-end tests are particularly suitable for high-impact processes such as signing in, placing orders or submitting a case file. They usually take longer and need more maintenance than a Glossary · In briefunit testA unit test is an automated test of a small, defined software component, usually isolated from external systems.Read more or Glossary · In briefintegration testAn integration test checks whether several parts of a software system work together correctly, focusing on their communication and the data they exchange.Read more. Not every screen action therefore needs its own end-to-end test. A small set covering the most important journeys often provides the most useful complement to faster, more focused tests.