Maison > développement back-end > Golang > le corps du texte

Comment puis-je mesurer la couverture des tests dans Go ?

DDD
Libérer: 2024-11-28 03:57:12
original
274 Les gens l'ont consulté

How can I measure test coverage in Go?

Comment mesurer la couverture des tests dans Go

L'un des défis des tests logiciels consiste à déterminer dans quelle mesure les tests couvrent le code testé . Cette métrique, connue sous le nom de couverture des tests, est essentielle pour garantir que les tests sont complets et efficaces.

Capacités de couverture des tests de Go

Dans les versions Go 1.2 et ultérieures, le go La commande test prend désormais en charge le calcul et l’affichage des résultats de couverture de test. Pour activer la couverture, utilisez simplement l'indicateur -cover lors de l'exécution des tests.

go test -cover
Copier après la connexion

Cela générera un rapport de couverture de base, indiquant le pourcentage de déclarations couvertes par les tests.

Analyse de couverture détaillée

Pour des rapports de couverture plus détaillés, utilisez l'indicateur -coverprofile pour spécifier un fichier de sortie qui contiendra le profil de couverture. Ce profil peut ensuite être analysé à l'aide de la commande go tool cover.

go test -coverprofile=coverage.out
go tool cover -html=coverage.out
Copier après la connexion

L'indicateur -html génère un rapport HTML qui fournit une représentation visuelle de la couverture, mettant en évidence les lignes qui ne sont pas couvertes.

Tests Blackbox

Pour mesurer la couverture des tests Blackbox (tests qui n'ont pas accès à l'état interne du package), utilisez le -indicateur coverpkg. Cet indicateur spécifie le package qui doit être instrumenté pour la couverture.

go test -coverprofile=.coverage.html -coverpkg=your/pkg your/pkg/pkg_test
Copier après la connexion

Améliorations récentes

Dans Go 1.20, les tests d'intégration peuvent désormais être inclus dans l'analyse de couverture. La commande go build -cover peut être utilisée pour créer des binaires instrumentés par la couverture. Ces binaires peuvent ensuite être utilisés dans des tests d'intégration pour étendre la portée des tests de couverture.

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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal