J'ai un script de test Test::More pour un module que nous avons fait. Lorsque vous exécutez le script de test par lui-même, cela fonctionne comme prévu. Puisqu'il y a plusieurs tests à exécuter, j'ai créé un fichier Test::Harness qui exécute tous les scripts. Cependant, lors de l'exécution à partir du Test::Harnessruntests
, le script renvoie des erreurs. Pendant le débogage, j'ai essayé d'exécuter le script en utilisant des backtics et cela a fonctionné. Donc, la commande runtest a provoqué les erreurs.Pourquoi mes tests de module Perl échouent-ils lorsque je les lance avec Test :: Harness :: runtests?
Le code du harnais est assez simple:
(perl) -w
use strict;
use warnings;
use Test::Harness;
my @tests = ('test1.pl', 'test2.pl', 'test3.pl');
runtests(@tests);
Les erreurs proviennent d'un module CPAN nous utilisons, Pod::HtmlEasy.
La solution que j'espère est pour un moyen d'exécuter le Test::Harness sans obtenir les erreurs.
La sortie du test:
test1..........False [] range "\w-" in regex; marked by line 20. Use of uninitialized value in string ne at /app/perl/lib/Pod/HtmlEasy/Parser.pm line 422, line 20. Use of uninitialized value in string ne at /app/perl/lib/Pod/HtmlEasy/Parser.pm line 363, line 22. False [] range "\w-" in regex; marked by line 22. Use of uninitialized value in string ne at /app/perl/lib/Pod/HtmlEasy/Parser.pm line 488, line 24. Use of uninitialized value in string ne at /app/perl/lib/Pod/HtmlEasy/Parser.pm line 363, line 26. close() on unopened filehandle PODIN at /app/perl/lib/Pod/HtmlEasy.pm line 248. Use of uninitialized value in concatenation (.) or string at /app/perl/lib/Pod/HtmlEasy.pm line 318. (...) Use of uninitialized value in concatenation (.) or string at /app/perl/lib/Pod/HtmlEasy.pm line 396. test1..........ok 2/3close() on unopened filehandle PODIN at /app/perl/lib/Pod/HtmlEasy.pm line 248. Use of uninitialized value in concatenation (.) or string at /app/perl/lib/Pod/HtmlEasy.pm line 318. (...) Use of uninitialized value in concatenation (.) or string at /app/perl/lib/Pod/HtmlEasy.pm line 396. test1..........ok
Avez-vous essayé de mettre à jour Pod :: HtmlEasy? Il semble que regex semble différent ces jours-ci et le fichier Changes indique que la dernière version a une solution pour "surmonter les échecs de test CPAN apparemment aléatoires". – innaM
@Manni; Merci, cela semble être une voie à suivre. Nous utilisions la dernière version du développeur original, 0,07 à partir de 2004. L'utilisation de la dernière version a introduit d'autres problèmes que nous devons résoudre si ... Comme certains changements non-rétrocompatibles. Un pas en avant, un pas en arrière. :) En tout cas, merci. – Fredrik