Understanding E2E Testing and Its Use Cases
Most developers will have seen a version of the testing pyramid shown in the following figure:
E2E tests fall under the User Interface (UI) testing category. The type of test we'll be looking at in this chapter is automated E2E tests using Cypress.
E2E and UI tests provide a level of confidence higher than unit or integration tests. They're testing the application as used by the end user. The end user doesn't care why or where a bug is happening, just that there is a bug. The where and why of a bug tends to be the concern of unit and system-level tests. Unit and system-level tests check that the internals of a system work as the specification or code describes them. UI-level tests validate that application flows are working as expected.
A strong E2E test suite that runs fast, has few false negatives (where a test fails but the application works), and...