Test des packages Go avec des sous-répertoires
Dans le domaine du développement Go, une question courante se pose : pouvons-nous organiser nos tests dans des sous-répertoires pour améliorer la propreté de l'espace de travail ? Cet article vise à faire la lumière sur ce sujet.
Pratiques de test et conventions Go
Traditionnellement, la documentation Go recommande de placer le code de test au même endroit que le code de production. Bien qu'elle puisse simplifier l'accès aux membres du programme non exportés, cette approche peut entraîner un espace de travail encombré. Cependant, il existe un moyen de séparer les tests en sous-répertoires tout en conservant l'accessibilité.
Exécuter des tests de manière récursive
Pour exécuter des tests dans plusieurs sous-répertoires, vous pouvez tirer parti de l'option "go test " avec la notation "./...". Dans le répertoire racine du projet, tapez ce qui suit :
go test ./...
Cette commande parcourra de manière récursive la structure de répertoires du projet, identifiant et exécutant tous les fichiers de test qu'elle rencontre.
Considérations sur les répertoires séparés
Si les tests résident dans des répertoires distincts, ils nécessitent une attention particulière. Assurez-vous que les variables et fonctions exportées dans le package principal portent le préfixe du nom du package. Cela permet aux fichiers de test d'accéder au contenu exporté. De plus, le contenu non exporté restera inaccessible.
Séparation des packages et des répertoires
Bien que la séparation des répertoires permette une organisation plus propre, en gardant le fichier de test adjacent à la source principale Le fichier reste un choix pratique pour un emplacement facile des fichiers.
Couverture du code dans le temps
Pour générer des statistiques globales de couverture de code pour les projets Go dans les pipelines CI/CD, utilisez l'option " gocoverstats".
Couverture des tests d'intégration
Depuis Go 1.20, les outils de couverture s'étendent désormais aux tests d'intégration, permettant la collecte de profils à partir de suites de tests plus vastes.
Approche de test alternative
Vous pouvez également envisager d'organiser les tests dans des packages séparés plutôt que dans des sous-répertoires. Les fichiers de test d'un package "foo" peuvent résider dans un package nommé "foo_test" tout en restant dans le même répertoire. Cette approche empêche l'accès aux membres non exportés du package "foo."
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!