End-to-end integration tests
The last subject we will discuss in this chapter is end-to-end integration tests. These tests involve actually calling the server and checking the real responses.
Benefits
So, what are the benefits of testing the actual client-server connection? The most valuable benefit is that you know your application will work in the deployed environment. Sometimes an application will get deployed and not work because a network or database connection was incorrectly configured and that will wreak havoc on a deployment.
Additionally, this will help to verify the system is working properly. A series of smoke tests could be employed after a deployment to ensure the deployment was successful.
Detriments
E2E tests are usually skipped for one of two reasons. The first reason is that they are difficult to write. You have a lot of extra setup to get these tests to run, including a completely different test runner than what you normally use for unit testing. If not a different runner,...