J'utilise genhtml (sous Windows sous cygwin) pour générer un rapport de couverture de test unitaire à partir de deux fichiers de données de couverture. Ce sont toutes des données de couverture provenant du même fichier source de test unitaire.Impossible de fusionner les données de couverture à l'aide de genhtml
Cependant, quand je suis entré dans la commande suivante:
perl genhtml /home/administrator/coverage1.dat /home/administrator/coverage2.dat
Je suis sortie et problème suivant:
Reading data file /home/administrator/coverage1.dat
Reading data file /home/administrator/coverage2.dat
genhtml: Can't use an undefined value as a HASH reference at genhtml line 1506.
Et il a échoué à générer quoi que ce soit. J'ai joué avec les fichiers et j'ai découvert que l'une des raisons à cela était peut-être que les en-têtes et les fichiers se répètent dans les données de couverture.
Est-ce un problème connu, ou est-ce que quelqu'un connaît un moyen de contourner le problème ou suis-je sur la mauvaise voie?
Merci.
Je change les deux fichiers de l'encodage ANSI à l'encodage UTF-8, et la commande fonctionne SAUF le premier enregistrement n'a pas été compté. J'ai ensuite essayé de voir si ce sont d'autres fichiers/formats de fichiers js qui ont causé des problèmes. Mais pas de modèle évident là-bas. Vous ne savez pas si cela ressemblait à un bug ou à un fichier corrompu? – BeraCim
@BeraCim, je n'utilise pas lcov, et je ne vais certainement pas le pirater. Donc, je ne peux pas vous donner plus de conseils spécifiques. La liste de diffusion est le meilleur endroit pour obtenir de l'aide de personnes ayant les connaissances spécifiques nécessaires pour vous aider à comprendre cela. Voir http://ltp.sourceforge.net/coverage/lcov.php et https://lists.sourceforge.net/lists/listinfo/ltp-coverage – daotoad
Scrap ce que je viens de dire ... c'était un coup de chance. Le format de fichier n'a rien à voir avec le résultat. Cependant, la première instance dans les données de couverture n'a pas été exécutée du tout. En outre, j'ai confirmé que tous les groupes répétitifs trouvés dans le fichier de données de couverture provoqueront l'erreur ci-dessus. J'ai posté dans la liste de diffusion de lcov. J'espère que j'aurai bientôt une réponse. Gardera ce fil posté. – BeraCim