Frage

Ist es möglich, bestimmte Funktionen oder Codezeilen aus der gcov-Coverage-Analyse auszuschließen. Mein Code enthält bestimmte Funktionen, die für die Fehlersuche verwendet werden und sind nicht als Teil meiner Testsuite ausgeführt. Solche Funktionen reduzieren die Reichweite Prozentsatz von gcov berichtet. Ich möchte diese Funktionen aus den Ergebnissen auszuschließen. Wenn es nicht möglich, über gcov ist, vielleicht ist es möglich, über lcov, aber ich war nicht in der Lage, es herauszufinden. Ihre Hilfe ist willkommen.

War es hilfreich?

Lösung

ich bestimmte Quelldateien herausfiltern, indem die Ausgabe von lcov --capture durch einen einfachen awk-Skript ausgeführt wird. Der Ausgang des lcov --capture hat ein sehr einfaches Format und den awk-Skript unter Filter aus Quelldateien passend auf MUSTER. Ich denke, dass es möglich ist, das Skript anpassen, um es Funktionen zu machen Filter anstelle von Dateinamen.

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"
}
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top