Boosting test coverage for microservices
summary
Project refactors integration testing to instrument binaries with Go 1.20 coverage support, build instrumented images via Docker (Dockerfile arg go build ARs), run them in CI with GitHub Actions and Docker Compose, collect coverage profiles and upload to the monitoring service "code. This is threee". The change shows a concrete lift — one service gains about 5 percentage points coverage — and exposes previously untested main, websocket and gRPC paths; shutdown handling and SIGTERM propagation required fixes.
AI-written summary · about
chapters (14)
- 0:00Introduction and background
- 3:19Challenges in decentralized identity testing
- 6:54Defining automated testing
- 9:04Unit tests and mocking limitations
- 13:01Application tests for real environments
- 14:49Testing approach in Findy Agency
- 18:03Understanding test coverage
- 21:35Automated coverage monitoring
- 25:10New Go tooling for coverage
- 27:00Integrating coverage in Docker
- 28:01Application test pipeline setup
- 31:15Results and improvements
- 33:23Graceful shutdown challenges
- 34:25Key takeaways and recommendations
related talks
42mBoosting Test Coverage for Microservices
57mComprehensive testing strategies for modern microservice architectures
07mGenerating Coverage with System Test
47mDev/Testing challenges with microservices and CD
31mMeasure End to End Tests Coverage
31mBuilding a microservices architecture with Go
35mMicroservices, Service Mesh, and CI/CD Pipelines: Making It All Work Together [I]
28mContinuous Integration Testing: Fully Test your Microservices Application, Early and Often
