[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