7. UNIT TESTS
• Target: Units
• Benefits:
• Fastest feedback
• Improved design
• Use cases:
• TDD
• Business logic
• Edge cases in comm.
Services
Resources
Domain
Repositorie
s
HTTPClient
Gateways
Persistence
8. UNIT TESTS
• Solitary Style – with mocking
• Sociable – no mocking
• In very small microservices, Component testing
might replace Unit testing entirely
• Unit tests are never enough
Services
Resources
Domain
Repositorie
s
HTTPClient
Gateways
Persistence
9. INTEGRATION TESTS
• Target: Communication Interfaces
• Benefits: Focus
• Use Cases:
• Security
• Fault tolerance
• ORM Mapping
Services
Resources
Domain
Repositorie
s
HTTPClient
Gateways
Persistence
Other
Microservice
DB
Client
10. INTEGRATION TESTS
• Test against real dependencies, avoid mocks
• Consider separating from main CI pipeline
to mitigate fragility
Services
Resources
Domain
Repositorie
s
HTTPClient
Gateways
Persistence
Other
Microservice
DB
Client
11. COMPONENT TESTS
• Target: A microservice as a whole
• Benefits: Comprehensive and fast
• Use Cases:
• Fast Feedback
• Correctness
Services
Resources
Domain
Repositorie
s
HTTPClient
Gateways
Persistence