NOTE
Unit Testing in Go
Testing package conventions, table-driven tests, subtests, race checks, fuzzing, and maintainable boundaries.
This is a historical learning note and may contain outdated or incomplete understanding.
Go’s testing package discovers TestXxx functions and supports subtests, benchmarks, examples, and fuzzing. Table-driven tests are useful when many inputs share one behavioral contract.
Test observable behavior and edge cases rather than internal implementation details. Run the race detector for concurrency-sensitive code where practical, keep external dependencies behind controllable boundaries, and avoid tests that pass only because they depend on timing or test order.