'Approach of system tests for multiple microservices in different repositories
I have 4 microservices composing my backend stack:
- a Websocket "api"
- a REST api
- a Database server (neo4j)
- a separate (Rest-like) service to load data in the database
general flow of communications is done this way:
(FRONT) <-> (Websocket) -> (REST api) -> (Graph)
^
|
(data uploader)
Each service has on its own GitHub repository.
Teams are working independently on each.
Unit and integration tests have been written for each of these microservices.
But as a whole system, they may be dependencies (because of evolving contracts) between version/branches between different repositories/microservices composing this stack.
how do I go about system tests and end-to-end tests in a CI/CD pipeline?
- create a parent-level repository constituted of submodules (one for each micro service), then create a docker-compose file to test the "end-to-end" flow?
- for each service, using some
git cloneto fetch latest version of each of the other microservices to check for. - Any better alternatives ?
haven't found many details or find best practices, except a few insights on answers posted here
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|
