Maison > développement back-end > Golang > Comment puis-je regrouper les résultats de la couverture du package Go ?

Comment puis-je regrouper les résultats de la couverture du package Go ?

DDD
Libérer: 2024-12-21 10:44:10
original
933 Les gens l'ont consulté

How Can I Aggregate Go Package Coverage Results?

Couverture globale du package Go

Lors de l'exécution de tests dans votre bibliothèque Go, vous pourriez rencontrer le besoin d'obtenir un aperçu de la couverture consolidée pour tous ses forfaits. Par défaut, l'indicateur « -cover » fournit uniquement des informations de couverture pour chaque colis individuellement.

Solution

Depuis Go 1.10, vous pouvez utiliser l'indicateur « -coverpkg » pour résoudre ce problème. Exécutez simplement la commande suivante :

go test -v -coverpkg=./... -coverprofile=profile.cov ./...
Copier après la connexion

Après avoir exécuté vos tests, générez l'analyse de couverture agrégée à l'aide de :

go tool cover -func profile.cov
Copier après la connexion

Méthode héritée (Pre-Go 1.10)

Pour les versions Go antérieures à 1.10, vous pouvez utiliser le script bash suivant :

#!/bin/bash

echo 'mode: count' > profile.cov

for dir in $(find . -maxdepth 10 -not -path './.git*' -not -path '*/_*' -type d); do
  if ls $dir/*.go &>/dev/null; then
    go test -short -covermode=count -coverprofile=$dir/profile.tmp $dir
    if [ -f $dir/profile.tmp ]; then
      cat $dir/profile.tmp | tail -n +2 >> profile.cov
      rm $dir/profile.tmp
    fi
  fi
done

go tool cover -func profile.cov
Copier après la connexion

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