2010-11-17 12 views
6

Ich möchte gcov mit meinem Komponententest verwenden, der mit QTestLib geschrieben wurde. Ich habe es geschaffen durch, diese zu meiner .proDatei einige .gcno Dateien auf meinen Objektdateien zu erzeugen:So verwenden Sie gcov mit QMake für die Codeabdeckung

QMAKE_CXXFLAGS += -fprofile-arcs -ftest-coverage -O0 

Aber, wenn ich laufe:

gcov main.cpp.gcno 

ich ein paar .gcov Dateien bekam erzeugt mit nicht-nützlichen Inhalten (nichts, was ich in den Tutorials im Internet zu sehen):

-: 0:Source:main.cpp 
-: 0:Graph:main.gcno 
-: 0:Data:- 
-: 0:Runs:0 
-: 0:Programs:0 
-: 1:/*EOF*/ 
-: 2:/*EOF*/ 
-: 3:/*EOF*/ 
-: 4:/*EOF*/ 
-: 5:/*EOF*/ 
-: 6:/*EOF*/ 
-: 7:/*EOF*/ 
-: 8:/*EOF*/ 
-: 9:/*EOF*/ 
-: 10:/*EOF*/ 
-: 11:/*EOF*/ 
-: 12:/*EOF*/ 
-: 13:/*EOF*/ 
-: 14:/*EOF*/ 
#####: 15:/*EOF*/ 
-: 16:/*EOF*/ 
#####: 17:/*EOF*/ 
-: 18:/*EOF*/ 
-: 19:/*EOF*/ 
#####: 20:/*EOF*/ 
-: 21:/*EOF*/ 
-: 22:/*EOF*/ 
-: 23:/*EOF*/ 
-: 24:/*EOF*/ 
#####: 25:/*EOF*/ 
#####: 26:/*EOF*/ 
-: 27:/*EOF*/ 
-: 28:/*EOF*/ 
-: 29:/*EOF*/ 
#####: 30:/*EOF*/ 

Meine Quelldateien sind unter ./MyProject/test/src Verzeichnis und alle meine Objektdateien befinden sich in einem .obj-Verzeichnis unterhalb von src (dh: .MyProject/test/src/.obj). Alle Binärdateien werden in ./MyProject/build Verzeichnis erstellt.

Was fehlt mir?

Danke!

Antwort

4

Haben Sie Ihr QT-Programm ausgeführt? Bis dahin gibt es keine Coverage-Daten. Werfen Sie auch einen Blick auf LCOV, die Sie verwenden können, um einen schönen HTML-basierten Bericht von allem zu erhalten

+0

Sie sind richtig für die Abdeckung Daten: Es gibt Daten in den Dateien jetzt. Außerdem muss ich gcov mit der Option -o .obj versehen, da sich meine Objektdateien in einem separaten Verzeichnis von meiner Quelle befinden. –