
Go testing
Go testing is the test framework and tooling built into Go, an open-source programming language supported by Google for building simple, secure, scalable sys…
What Go testing is
Go testing is the test framework and tooling built into Go, an open-source programming language supported by Google for building simple, secure, scalable systems. The framework uses the `go test` command and `testing` package, discovering test functions named `TestXXX` in files ending in `_test.go`. Add `-v` to see each test and its result. Go's toolchain also provides native fuzzing, which varies inputs to search for bugs, plus built-in benchmarking and profiling frameworks. The race detector can be enabled with `go test -race`, though it only detects races on code paths exercised during a run. For vulnerability checks, `govulncheck` identifies known issues and prioritizes findings according to whether affected functions or methods are called. Its JSON output can feed CI/CD workflows, and the Go team offers a GitHub Action. Go dates to 2009 and is used for cloud and network services, command-line interfaces, web development, DevOps, and site reliability engineering. It is free, with releases for Linux, macOS, and Windows. Its cryptography libraries can be used in FIPS 140-3 compliant mode.
Good
- Free and available for Linux, macOS, and Windows.
- Test discovery uses `TestXXX` functions in `_test.go` files.
- Native fuzzing is included in the toolchain.
- `govulncheck` prioritizes findings based on affected calls.
- FIPS 140-3 compliant cryptography mode is available.
Watch out
- Race detection only finds races in executed code paths.
- Security fixes target the two most recent major releases.
- No free trial is listed.
Who it suits
Go testing suits Go developers who want command-line tests alongside fuzzing, benchmarks, profiling, and race detection. The broader Go toolchain also serves teams building cloud services, command-line tools, web applications, or DevOps systems.
Verdict
Go's built-in testing tools cover routine tests, fuzzing, benchmarks, profiling, race checks, and vulnerability scanning. The race detector's coverage is limited to code paths a test actually runs.
Plans and prices
From Go testing's own pricing page, checked 7 Oct 2026.
| Plan | Price | What it gives you |
|---|---|---|
| Go | Free | Open-source programming language; downloadable releases and source code |
The facts
Each one read from Go testing's own pages, with the date it was checked.
What it does
- Benchmarks and profiling
- The Go project describes its tooling as including built-in testing, benchmarking, and profiling frameworks.checked 7 Oct 2026
- CI integration
- The Go team provides a GitHub Action for govulncheck, and govulncheck's JSON output can support integration with other CI/CD systems.checked 7 Oct 2026
- Cryptography compliance
- Go's cryptography libraries can be used in FIPS 140-3 compliant mode for regulated environments.checked 7 Oct 2026
- Fuzzing
- Go's standard toolchain supports native fuzzing, which continuously manipulates program inputs to find bugs.checked 7 Oct 2026
- Help and support
- The Go site directs users to community help on Stack Overflow and the Gophers Slack, and to the Go issue tracker for bugs.checked 7 Oct 2026
- Race detection
- Go includes a race detector that can be enabled for tests with `go test -race`, but it only finds races in code paths that run.checked 7 Oct 2026
- Security updates
- The Go team issues security fixes for the two most recent major releases.checked 7 Oct 2026
- Test discovery
- The test framework runs test functions named `TestXXX` in files ending in `_test.go`.checked 7 Oct 2026
- Testing framework
- Go has a lightweight test framework built from the `go test` command and the `testing` package.checked 7 Oct 2026
- Use cases
- The Go site describes use for cloud and network services, command-line interfaces, web development, DevOps, and site reliability engineering.checked 7 Oct 2026
- Verbose test output
- Running `go test -v` lists the tests and their results.checked 7 Oct 2026
- Vulnerability scanning
- The `govulncheck` tool identifies known vulnerabilities that affect code and prioritizes findings based on whether vulnerable functions or methods are called.checked 7 Oct 2026
- What it does
- Go is an open-source programming language supported by Google for building simple, secure, scalable systems.checked 7 Oct 2026
Where it runs
- Download platforms
- The downloads page lists releases for Windows, macOS, and Linux, along with source archives and other ports.checked 7 Oct 2026
The company
- Founded
- 2009checked 28 Sep 2026





