Maison > développement back-end > Golang > Pouvons-nous organiser des tests Go dans des sous-répertoires ?

Pouvons-nous organiser des tests Go dans des sous-répertoires ?

Susan Sarandon
Libérer: 2024-11-17 08:16:04
original
382 Les gens l'ont consulté

Can We Organize Go Tests in Subdirectories?

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 ./...
Copier après la connexion

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!

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