Different kinds of tests
There are many kinds of tests, and it can be confusing sometimes to know what is being spoken about. For instance, when people refer to functional tests, they may be referring to different kinds of tests depending on the project's nature. In microservice land, we can classify tests into these five distinct goals:
- Unit tests: These make sure a class or a function works as expected in isolation.
- Functional tests: Verify that the microservice does what it says from the consumer's point of view, and behaves correctly, even upon receiving bad requests.
- Integration tests: Verify how a microservice integrates with all its network dependencies.
- Load tests: Measure the microservice performances.
- End-to-end tests: Verify that the whole system works—from initial request to final action—through all its components.
We will dive deeper into the details in the following sections.