Maison  >  Article  >  développement back-end  >  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
Susan Sarandonoriginal
2024-10-30 12:01:27135parcourir

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