Question

Est-il possible d'exclure certaines fonctions ou lignes de code de l'analyse de la couverture gcov. Mon code contient certaines fonctions qui sont utilisées pour le débogage, et ne sont pas exerçables dans le cadre de ma suite de tests. Ces fonctions réduisent le pourcentage de couverture rapporté par gcov. Je voudrais exclure ces fonctions à partir des résultats. S'il est impossible via gcov, peut-être il est possible par l'intermédiaire lcov, mais je ne pouvais le comprendre. Votre aide est appréciée.

Était-ce utile?

La solution

Je filtrer certains fichiers source en exécutant la sortie de --capture de lcov par un simple script awk. La sortie de lcov --capture a un format très simple et le script awk ci-dessous les filtres des fichiers source correspondant à F_MOTIF. Je pense qu'il est possible d'adapter le script pour le rendre filtre fonctions au lieu des noms de fichiers.

BEGIN {
        record=""
}

/^SF/ {
        if ( match ($0, "file_pattern" ) ) {
            doprint = 0
        } else {
            doprint = 1
        }
}

/^end_of_record$/ {
        if ( doprint ) {
            print record $0
        }
        record = ""
        next
}

{
    record=record $0 "\n"
}
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top