8 ms·
> On the other hand, verifying the quality of a whole application that is composed of many microservices can represent a significant amount of testing complexit
by Rauchg 11y ago
> On the other hand, verifying the quality of a whole application that is composed of many microservices can represent a significant amount of testing complexity: instead of running a single command to test the code running in one process, a large number of integrated dependent components must be running first, verified as healthy, and stay running throughout the tests.
This was very likely already the case for the monolith as well. It likely depended on databases, caches, queues, etc. The solution is the same in both cases: an orchestration solution (such as https://docs.docker.com/compose/ https://docs.docker.com/compose/).
- skewart 11y agoMaybe. But, setting up the monolith locally is documented in one README, and you've probably already set it up. And, depending on how big your org is, the monolith probably has a lot fewer different databases and caches and queues than all your various microservices built by different teams with different preferences over the years. Obviously there are solutions to this problem, like you pointed out. But ease of integration testing - both manual and automated - is one thing you often give up when you go down the microservices path.