"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Como posso imprimir mensagens de depuração com segurança em testes Go?

Como posso imprimir mensagens de depuração com segurança em testes Go?

Publicado em 14/01/2025
Navegar:667

How Can I Reliably Print Debug Messages in Go Tests?

Como imprimir mensagens com eficácia em testes Go

Durante os testes em Go, pode ser útil imprimir mensagens para fins de depuração. No entanto, usar fmt.Println nem sempre produz a saída esperada. Em vez disso, os métodos a seguir fornecem opções de impressão mais confiáveis ​​ao trabalhar com testes. As estruturas B fornecem os seguintes métodos de registro:

.Log

: semelhante a fmt.Print

    .Logf
  • : Semelhante a fmt.Printf
  • Esses métodos são projetados especificamente para uso em testes e garantem que as mensagens impressas sejam tratadas adequadamente .
  • Exemplo:

func TestPrintSomething(t *testing.T) { t.Log("Say hi") // Imprime "Say hi" usando o método .Log }

Saída de teste com sinalizador -v:

func TestPrintSomething(t *testing.T) {
    t.Log("Say hi") // Prints "Say hi" using the .Log method
}

go test -vCom o sinalizador "-v", o teste imprimirá o mensagens de log para testes aprovados e reprovados.

Nota:
go test -v

O método .Error de teste.T também pode ser usado para imprimir mensagens. No entanto, destina-se a relatar erros e marcará o teste como reprovado. Os métodos .Log fornecem uma opção mais limpa e adequada para impressão informativa sem afetar o resultado do teste.

Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3