End-to-end testing is a testing practice in which we test the application flow from beginning to end. With end-to-end testing, we simulate a scenario in which a user flows through our application from some kind of an entry point to a certain outcome.
For example, an end-to-end test of a web app could include the following flow:
- User opening the URL of the web app in their browser
- User clicking the login link and logging in
- User checking notifications in the web app
- User logging out