[Dcmlib] Coverage Log -- Wednesday, July 28 2004: correction

Mathieu Malaterre mathieu.malaterre at kitware.com
Thu Jul 29 15:30:04 CEST 2004


Benoit Regrain wrote:
> Concretement, comment ca marche ?
> Qu'est ce qui permet de donner les pourcentages, et sur quoi ?

Dart c'est juste le serveur qui regroupe les resultats sur un zoli page web.

le code coverage est fais par gcov (fournis avec binutils/gcc). Et le 
calcul total est:

code covaege = nb de lignes couvertes / (nombres de lignes couvertes + 
nb de lignes non couvertes)

Mais Andy m'a fais remarquer que ce n'est pas precis et par ex les 
fonctions inline ne sont pas prise en compte, une astuce est de compiler 
avec -O0 (je reessairerais plus tard pour voir si ca change beaucoup ou 
pas).

Sinon est-ce que vous avez clique un peu sur les liens, c'est assez 
explicit pour savoir quelles lignes ont ete convertes.


Mathieu
Ps: un peu de documentation:
Pour faire un coverage pour l'instant c'est un peu bancale parce que 
gcov utilise des flags de gcc (donc marche pas sur Win32 par ex).
Ce que je fais c'est que je cree un autre gdcmbin (par gdcmbincov)
$ cd gdcmbincov
$ ccmake ../gdcm

mettre les options comme d'hab

le seule chose qui change c'est:
(cf http://public.kitware.com/Dart/HTML/Advanced.shtml )

CMAKE_CXX_FLAGS = -fprofile-arcs -ftest-coverage

$ make
$ (make install)
$ make Nightly

(ca cree un fichier .da)

$ make NightlyCoverage (le fichier .da est envoyer a Dart)

Et hop vous pouvez essayer chez vous !

pour ceux qui utilise zsh il y aussi :
make Experimental + make ExperimentalCoverage :)





More information about the Dcmlib mailing list