Maison  >  Article  >  développement back-end  >  Comment obtenir une couverture précise du code Go pour les packages isolés ?

Comment obtenir une couverture précise du code Go pour les packages isolés ?

Linda Hamilton
Linda Hamiltonoriginal
2024-11-27 06:09:09537parcourir

How to Achieve Accurate Go Code Coverage for Isolated Packages?

Comment mesurer la couverture de code des dossiers isolés dans Go

Dans Go, mesurer la couverture de code pour les packages résidant dans des dossiers séparés peut s'avérer difficile. Considérez la structure de projet suivante :

stuff/stuff.go -> package: stuff
test/stuff/stuff_test.go -> package: test

Même si stuff_test.go exécute le code de stuff.go, le rapport de couverture peut indiquer :

coverage: 0.0% of statements

C'est parce que go test -cover by par défaut analyse uniquement le package en cours de test, pas ses dépendances.

Pour résoudre ce problème, vous pouvez utiliser l'option -coverpkg pour spécifier quels packages doivent être pris en compte pour la couverture. analyse. Par exemple, la commande suivante inclura tous les packages du répertoire actuel :

go test ./test/... -coverprofile=cover.out -coverpkg ./...

Une fois l'exécution du test terminée, vous pourrez générer un rapport de couverture en utilisant :

go tool cover -html=cover.out

Ceci fournissez un rapport détaillé de la couverture du code pour votre projet, y compris la couverture des packages dans des dossiers séparés.

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