Maison > développement back-end > Golang > Comment déboguer efficacement les tests Go à l'aide de la journalisation ?

Comment déboguer efficacement les tests Go à l'aide de la journalisation ?

Linda Hamilton
Libérer: 2024-12-20 18:28:11
original
971 Les gens l'ont consulté

How to Effectively Debug Go Tests Using Logging?

Débogage des tests Go avec journalisation

Lors de l'écriture de tests Go, vous souhaiterez peut-être imprimer des instructions à des fins de débogage. Cependant, contrairement aux programmes classiques, les impressions à l'intérieur des tests n'apparaissent pas directement à l'écran.

Utilisation de testing.T.Log et testing.T.Logf

Le package de tests fournit T.Log et T. Méthodes .Logf, qui sont respectivement équivalentes à fmt.Print et fmt.Printf. Ces méthodes dirigent les journaux vers un tampon spécifique, accessible avec l'indicateur -v (verbeux) lors de l'exécution de tests.

Exemple

func TestPrintSomething(t *testing.T) {
    t.Log("Say hi")
}
Copier après la connexion

Lors de l'exécution avec go test -v, ceci le test affichera :

=== RUN   TestPrintSomething
Say hi
--- PASS: TestPrintSomething (0.00s)
Copier après la connexion

Différences par rapport à fmt.Print

While fmt.Print instructions apparaissent directement sur la console, les logs T.Log et T.Logf sont mis en mémoire tampon. Cela signifie que :

  • Les journaux des tests réussis ne sont affichés que lorsque l'indicateur -v est utilisé.
  • Les journaux des tests ayant échoué sont toujours affichés, quel que soit l'indicateur -v.

Conclusion

Pour imprimer des instructions dans les tests Go, utilisez testing.T.Log ou testing.T.Logf au lieu de fmt.Imprimer. Cela garantit que vos journaux sont dirigés vers le bon tampon et affichés de manière appropriée.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal