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 from 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...