Maison > Article > développement back-end > Pouvez-vous exécuter des tests dans des sous-répertoires dans Go ?
Exécuter des tests dans des sous-répertoires dans Go
Garder votre espace de travail organisé en plaçant des tests et des exemples dans des sous-répertoires est une approche efficace. Cet article explore la faisabilité et les étapes nécessaires pour y parvenir dans Go.
Tests dans les sous-répertoires
Go vous permet d'exécuter des tests à partir de sous-répertoires en spécifiant le chemin complet à l'aide de " ./..." :
go test ./...
Cette commande analysera tous les sous-répertoires à la recherche de packages et exécutera les tests qu'ils contiennent. Cependant, il y a certaines implications à prendre en compte.
Accès et visibilité des packages
Lorsque vous placez des fichiers de test dans des sous-répertoires, il est important de préfixer les variables et fonctions exportées avec le nom du package. pour que le fichier de test accède au contenu exporté. Les membres non exportés ne seront pas accessibles.
go test vs. go test -cover
Lors de l'utilisation de go test -cover pour la couverture du code, il est crucial d'utiliser -coverpkg=./... pour collecter les données de couverture de tous packages :
go test -coverpkg=./... ./...
Tests d'intégration
Depuis Go 1.20, les tests d'intégration sont désormais pris en charge pour le profilage de couverture. Utilisez -cover lors de la création de l'exécutable et GOCOVERDIR pour spécifier l'emplacement des données de couverture :
go build -cover -o myprogram.exe myprogram.go mkdir somedata GOCOVERDIR=somedata ./myprogram.exe
Approche alternative
Vous pouvez également séparer les tests dans un package différent sans les placer dans un sous-répertoire. Par exemple, les tests du package "foo" peuvent résider dans le package "foo_test" dans le même répertoire, garantissant l'accès uniquement aux membres exportés de "foo".
Conclusion
Bien qu'exécuter des tests à partir de sous-répertoires soit techniquement possible, ce n'est peut-être pas la meilleure pratique en termes d'organisation et d'accessibilité. L'approche alternative consistant à créer un package de test distinct dans le même répertoire est une option viable pour gérer les tests plus efficacement.
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!