- Test a single Component, Service, Pipe etc.
- Test a single specific behaviour in a controlled environment
- Mock everything you need to test this functionality
- Use code coverage analysis to make sure everything is covered
- (Usually) Improves code structure and quality
- Test edge cases on the most detailed level
- Know if a change breaks a specific behaviour