Writing a minimum viable end-to-end test suite for a simple application
End-to-end testing (or e2e for short) is on the other end of the spectrum as far as unit testing is concerned. The entire application exists as a black box, and the only controls at your disposal—for these tests—are actions the user might take inside the browser, such as firing click events or navigating to a page. Similarly, the correctness of tests is only verified by inspecting the state of the browser and the DOM itself.
More explicitly, an end-to-end test will (in some form) start up an actual instance of your application (or a subset of it), navigate to it in an actual browser, do stuff to a page, and look to see what happens on the page. It's pretty much as close as you are going to get to having an actual person sit down and use your application.
In this recipe, you'll put together a very basic end-to-end test suite so that you might better understand the concepts involved.
Note
The code, links, and a live example...