2010-11-17 21 views
6

Me gustaría usar gcov con mi prueba de unidad escrita usando QTestLib. He logrado generar algunos archivos .gcno a lo largo de mis archivos de objetos mediante la adición de esto a mi archivo .pro:Cómo usar gcov con QMake para cobertura de código

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

Pero, cuando corro:

gcov main.cpp.gcno 

Tengo un montón de archivos .gcov generado con contenido que no sea útil (nada que ver con lo que veo en los tutoriales en la web):

-: 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*/ 

Mis archivos de origen están bajo ./MyProject/test/src directorio y todos mis archivos de objeto están en un directorio .obj debajo de src (es decir: .MyProject/test/src/.obj). Todos los binarios se crean en el directorio ./MyProject/build.

¿Qué me estoy perdiendo?

Gracias!

Respuesta

4

¿Ha ejecutado su programa de QT? Hasta entonces no hay datos de cobertura. Además, eche un vistazo a lcov, que puede usar para obtener un buen informe basado en html de todo

+0

Tiene razón para los datos de cobertura: hay datos en los archivos ahora. Además, tengo que proporcionarle a gcov la opción -o .obj porque mis archivos de objetos están en un directorio separado de mi fuente. –

Cuestiones relacionadas