| name | testing-go-code |
| description | Run Go unit tests, coverage reports, and benchmarks. Use when you need to run tests, check coverage, run benchmarks, or regenerate mocks after interface changes. |
Testing Go Code
All commands run from the Go module root (installer/).
Unit Tests
task test
task test -- -run TestName
task test -- -short
For test conventions (naming, assertions, table-driven patterns, mock usage), see the writing-go-tests skill.
Coverage
task cov
Runs tests with coverage and opens an HTML report in the browser.
Benchmarks
task bench
Runs all benchmarks with memory allocation stats.
Combined Check
task check
Runs tests + lint in sequence. Use before committing.
Mock Regeneration
mockery
Run from the module root with no arguments after adding or modifying interfaces. Configuration is in .mockery.yml. Never edit generated mock files (*_mock.go) manually.