Tests come in main types:
- Unit tests: Test individual functions in isolation
- Integration tests: Test how parts work together
- End-to-end tests: Test the full application flow
Unit tests are fast and numerous. E2E tests are slow but thorough. A good test suite has many unit tests, some integration tests, and few E2E tests.