[Toulouse-pm] Un peu de Perl pour changer

Michel Rodriguez mirod at xmltwig.com
Fri Jan 23 07:41:47 CST 2004


Salut,

Comme c'est pas tres connu comme outil, je pense que ca vaut le coup de le
mentionner: Devel::Cover est un module qui permet de sortir les taux de
couvertures de tests.

Pour un module c'est tres facile a utiliser:

cover -delete
HARNESS_PERL_SWITCHES=-MDevel::Cover make test
cover

Ca sort un resultat comme ca:

------------------- ------ ------ ------ ------ ------ ------ ------
File                 stmt branch   cond    sub    pod   time  total
------------------- ------ ------ ------ ------ ------ ------ ------
XML/Twig.pm          86.85  63.44  50.76  99.80  40.00  95.79 75.28
XML/Twig/XPath.pm    95.15  66.67  38.46 100.00  50.00   4.21 87.68
Total                87.08  63.47  50.60  99.82  40.38 100.00 75.61
------------------- ------ ------ ------ ------ ------ ------ ------

Ca donne le taux de couverture des instructions (stmt), branches (branch),
conditions (cond), fonctions (sub), pod (pod, teste avec Test::Pod, mais
je sais pas comment, d'ou les taux pas terrible sur XML::Twig) et le temps
passe dans chaque fichier (time). Ca produit aussi des rapports detailles,
texte ou html, notamment le source du module avec des infos sur le code
execute par les tests et ce qui ne l'est pas.

On peut aussi l'utiliser sur des programmes, pas que sur des modules, bien
sur.

Ca aide vraiment a tester: j'ai passe mon temps libre de ces 3 dernieres
semaines a ecrire pres de 400 tests pour XML::Twig, a passer de moins de
50% de couverture a 100% des fonctions (il m'en reste 1 a tester, ca
devrait etre fait ce soir) et 75% au total.

http://qa.perl.org/, entre autres infos interessantes, a un lien vers
http://pjcj.sytes.net/cpancover/ qui donne les taux de couvertures pour
qulques modules importants de CPAN (c'est comme ca que j'ai eu honte des
taux de XML::Twig ;--(

Tiens, au passage, si quelqu'un qui a perl 5.6.* installe pouvait
recuperer la version de developpement de XML::Twig a
http://xmltwig.com/xmltwig/XML-Twig-3.12.tar.gz et juste faire tourner les
tests, ca m'arrangerait bien, pour voir si quand je saute des tests qui ne
tournent qu'en 5.8 ca plante pas. Merci.

--
Michel Rodriguez
Perl & XML
http://www.xmltwig.com




More information about the Toulouse-pm mailing list