← Go Programming learning path
Go Programming · Module 9 of 10

Packages, modules and testing

Organise code and write tests.

📖 Key ideas

  1. go mod init example.com/app creates go.mod.
  2. go get adds dependencies.
  3. Packages are folders; import "example.com/app/internal/db".
  4. Tests in *_test.go: func TestAdd(t *testing.T).
  5. go test ./... runs all tests; benchmarks with func BenchmarkX.
💡 Real-life example: Modules are boxes, packages are compartments, tests are quality stamps on each compartment.
go.modModule definition file
go getAdds dependencies
_test.goTest file suffix
testing.TTest handle