Testing microservices is hard. I learned just how hard it could be when I first dived into a tech stack with seven separate microservices, each with its own code base, dependency management, feature branches, and database schema—which also happened to have a unique set of migrations.
Talk about hectic.
The approach I took was to run everything locally. That meant that whenever I wanted to run end-to-end tests, I needed to go through the following five steps for each of the seven microservices: