Maison > développement back-end > Golang > Comment puis-je exécuter des tests Go de manière sélective et exclure des packages ou des répertoires spécifiques ?

Comment puis-je exécuter des tests Go de manière sélective et exclure des packages ou des répertoires spécifiques ?

Susan Sarandon
Libérer: 2024-12-15 21:17:14
original
309 Les gens l'ont consulté

How Can I Selectively Run Go Tests and Exclude Specific Packages or Directories?

Tests sélectifs : ignorer des packages dans Go

Lors de l'exécution de suites de tests, vous pouvez rencontrer des situations dans lesquelles vous souhaitez exclure certains packages ou répertoires de essai. Dans Go, il est possible de spécifier les packages à tester directement depuis la ligne de commande.

Par exemple, disons que vous avez une structure de projet comme celle-ci :

mypackage
mypackage/net
mypackage/other
mypackage/scripts
Copier après la connexion

Pour tester uniquement le mypackage , mypackage/other et mypackage/net packages tout en excluant mypackage/scripts, vous pouvez utiliser les éléments suivants command :

go test import/path/to/mypackage import/path/to/mypackage/other import/path/to/mypackage/net
Copier après la connexion

Alternativement, si votre syntaxe shell préférée le permet, vous pouvez utiliser le raccourci suivant :

go test import/path/to/mypackage{,/other,/net}
Copier après la connexion

Une autre approche consiste à utiliser go list, qui renvoie une liste de packages correspondant à un modèle donné. Vous pouvez diriger cette sortie vers une commande comme grep et filtrer les packages que vous ne souhaitez pas tester, comme ceci :

go test `go list ./... | grep -v directoriesToSkip`
Copier après la connexion

Dans les cas où la raison pour laquelle les tests sont ignorés est d'optimiser le temps d'exécution, le test les fonctions elles-mêmes peuvent vérifier testing.Short() et décider si elles doivent être ignorées en utilisant t.Skip(). Cela permet des tests sélectifs lors de l'appel de go test -short.

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