Testes e Ferramentas
Testes, fuzzing e comandos principais da toolchain. Os resultados aparecem na mesma seção de código: comentários // na mesma linha quando curtos, blocos // de múltiplas linhas abaixo da amostra quando não.
Busque em todas as páginas da documentação
Testes, fuzzing e comandos principais da toolchain. Os resultados aparecem na mesma seção de código: comentários // na mesma linha quando curtos, blocos // de múltiplas linhas abaixo da amostra quando não.
Executa testes no pacote.
// go test ./...
// go test -run TestName -vSlice de casos com subtestes.
tests := []struct{ in, out int }{{1, 2}, {2, 3}}
for _, tc := range tests {
if tc.in+1 != tc.out { panic("fail") }
}
// dois casos passamSubtestes para nomeação e controle.
// t.Run("nome", func(t *testing.T) { ... })Ponto de entrada nativo de fuzzing.
// func FuzzParse(f *testing.F) {
// f.Add("x")
// f.Fuzz(func(t *testing.T, s string) { _ = Parse(s) })
// }Verificações estáticas.
// go vet ./...BenchmarkXxx com b.N.
// func BenchmarkSum(b *testing.B) {
// for i := 0; i < b.N; i++ { sum() }
// }Marca helpers para que falhas apontem para o chamador.
// t.Helper()Diretório temporário por teste.
// dir := t.TempDir()Registra callbacks de limpeza.
// t.Cleanup(func() { ... })Executa subtestes em paralelo com cuidado.
// t.Parallel()Exemplos como documentação + testes.
// func ExampleAdd() {
// fmt.Println(Add(1, 2))
// // Output: 3
// }Perfil de cobertura.
// go test -coverprofile=c.out ./...Formata o código.
// gofmt -w .Linter extra popular.
// staticcheck ./...Detecta data races sob teste.
// go test -race ./...Versões da Stack: Go 1.26.x · chi/gin/echo latest (verificar na compilação)
Revisado por Chris St. John·Última atualização: 18 de jul. de 2026