Maison >développement back-end >Golang >Comment puis-je obtenir une couverture complète du code sur plusieurs packages dans un projet Go ?

Comment puis-je obtenir une couverture complète du code sur plusieurs packages dans un projet Go ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-12-25 08:37:10504parcourir

How Can I Achieve Comprehensive Code Coverage Across Multiple Packages in a Go Project?

Obtenir une couverture complète du code dans les projets Go

Dans un projet Go composé de plusieurs packages, l'obtention d'un rapport global de couverture de code peut s'avérer difficile. Par défaut, la commande go test avec l'indicateur -cover fournit des informations de couverture pour chaque package séparément.

Pour obtenir un aperçu de la couverture sur l'ensemble du projet, vous pouvez implémenter la solution suivante :

À l’aide d’un script bash, parcourez chaque répertoire du projet. Pour chaque répertoire contenant des fichiers Go, exécutez go test avec l'indicateur -covermode=count. Cette commande génère un profil de couverture (profile.tmp) pour chaque package.

Ensuite, concaténez les fichiers profile.tmp de chaque package en un seul fichier (profile.cov). Ce profil consolidé fournit une vue complète de la couverture du code dans l'ensemble du projet.

Enfin, utilisez la commande go tool cover pour générer un rapport de couverture détaillé à partir du fichier profile.cov. Ce rapport inclura les pourcentages de couverture pour les fonctions, les instructions et l'ensemble de la base de code.

Cette approche offre une solution pratique pour obtenir un aperçu complet de la couverture du code dans les projets Go.

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!

Déclaration:
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