Maison > développement back-end > Golang > Comment analyser le rapport de couverture des tests de la fonction golang ?

Comment analyser le rapport de couverture des tests de la fonction golang ?

王林
Libérer: 2024-04-26 14:09:02
original
917 Les gens l'ont consulté

Générez un fichier de configuration de couverture via la commande go test -cover, utilisez l'outil gocov pour installer et générer un rapport HTML afin d'afficher des informations détaillées sur la couverture. Les étapes spécifiques incluent : Installez l'outil gocov. Pour exécuter des tests unitaires, ajoutez l'indicateur -cover : allez tester -cover. Générez un rapport de couverture : gocov convert -html couverture.out >

Comment analyser le rapport de couverture des tests de la fonction golang ?

Comment analyser le rapport de couverture de test d'une fonction Golang

Le rapport de couverture de test fournit des informations sur les parties du code qui ont été testées. Cela permet d'identifier les zones de code qui ne sont pas couvertes et de guider les efforts de tests ultérieurs.

Utilisez go test -covergo test -cover

Go 语言内置了 go test -cover 命令,可以生成测试覆盖率报告。该命令输出一个覆盖率配置文件,其中包含每个包和函数的覆盖率信息。

安装 gocov 工具

gocov 是一个可视化覆盖率报告的工具。它可以从 GitHub 或通过以下命令安装:

go install github.com/wadey/gocov/gocov
Copier après la connexion

生成 HTML 报告

要生成交互式的 HTML 报告,请使用 gocov 工具:

gocov convert -html coverage.out > coverage.html
Copier après la connexion
Copier après la connexion

生成的 coverage.html 文件可以在 Web 浏览器中打开,以查看详细的覆盖率信息。

实战案例

假设我们有一个名为 add 的函数,用于将两个整数相加:

package main

func add(a, b int) int {
    return a + b
}

func TestAdd(t *testing.T) {
    tests := []struct {
        a, b int
        want int
    }{
        {1, 2, 3},
        {3, 4, 7},
    }

    for _, test := range tests {
        if got := add(test.a, test.b); got != test.want {
            t.Errorf("add(%d, %d): got %d, want %d", test.a, test.b, got, test.want)
        }
    }
}
Copier après la connexion

运行覆盖率测试

使用 go test -cover 命令运行单元测试:

go test -cover
Copier après la connexion

生成覆盖率报告

生成并可视化覆盖率报告:

gocov convert -html coverage.out > coverage.html
Copier après la connexion
Copier après la connexion

打开 coverage.html 文件,可以看到 add

🎜Le langage Go possède une commande go test -cover intégrée pour générer un rapport de couverture de test. Cette commande génère un fichier de configuration de couverture qui contient des informations de couverture pour chaque package et fonction. 🎜🎜🎜Installez l'outil gocov 🎜🎜🎜gocov est un outil de reporting de couverture visuelle. Il peut être installé depuis GitHub ou via la commande suivante : 🎜rrreee🎜🎜Générer un rapport HTML🎜🎜🎜Pour générer des rapports HTML interactifs, utilisez l'outil gocov : 🎜rrreee🎜generated coverage html. Les fichiers peuvent être ouverts dans un navigateur Web pour afficher des informations détaillées sur la couverture. 🎜🎜🎜Cas pratique🎜🎜🎜Supposons que nous ayons une fonction appelée add qui ajoute deux entiers : 🎜rrreee🎜🎜Exécutez des tests de couverture🎜🎜🎜Utilisez go The test -cover La commande exécute le test unitaire : 🎜rrreee🎜🎜Générer le rapport de couverture🎜🎜🎜Générer et visualiser le rapport de couverture : 🎜rrreee🎜Ouvrez le fichier coverage.html, vous pouvez voir ajouter pourcentage de couverture des fonctions. Si la couverture est inférieure à 100 %, cela indique que certains chemins de code n'ont pas été couverts par les tests. 🎜

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!

Étiquettes associées:
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