Maison > développement back-end > Golang > Comment pouvez-vous capturer la couverture du code dans les tests d'intégration binaire Go ?

Comment pouvez-vous capturer la couverture du code dans les tests d'intégration binaire Go ?

Susan Sarandon
Libérer: 2024-10-30 12:01:27
original
263 Les gens l'ont consulté

How Can You Capture Code Coverage in Go Binary Integration Tests?

Couvrir l'incouvrable : capturer la couverture du code dans les tests d'intégration binaire Go

Bien que la capture des métriques de couverture du code à partir des tests unitaires soit un processus simple, on ne peut pas en dire autant de l'intégration tests exécutés sur le binaire lui-même. Cependant, il existe une solution de contournement qui exploite le cadre de test.

Solution : exploiter le cadre de test Go

La clé réside dans la contrainte des tests d'intégration dans le cadre de test en :

  1. Création d'un fichier de test :

    • Exécutez la fonction main() en tant que goroutine :

      func TestMainApp(t *testing.T) {
        go main()
        // Start integration tests here
      }
      Copier après la connexion
  2. Exécuter des tests d'intégration :

    • Utilisez exec.Cmd pour lancer des tests d'intégration pendant que l'application s'exécute dans un test.
  3. Collecte de couverture :

    • Exécutez l'outil de couverture comme d'habitude pour recueillir des statistiques.

Ressources supplémentaires

Pour plus d'informations sur cette approche, reportez-vous à l'article « Optez pour une couverture avec des tests externes ». Bien qu'il ait été écrit il y a un an, les concepts sous-jacents restent pertinents.

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 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