Bezdepbonusu7Программирование: статьи и ответы

Вопрос

Devel :: Cover с опциями для тестового покрытия

Автор вопроса: szabgabОтветов: 1

В проекте я работаю над макетом каталога, в котором нет каталога lib, поэтому у нас есть

/X.pm
/X/Y.pm
...
/t/test.t

когда я бегу

$ PERL5OPT=-MDevel::Cover make test
$ cover

Я получаю отчет только по файлам в т /

как я могу указать Devel :: Cover сообщать обо всех файлах в текущем каталоге, кроме файлов в t?

Я думал, что смогу это сделать вот так:

cover -t +inc . -inc t

но я получаю:

Unknown option: inc
Invalid command line options at /home/gabor/perl5/lib/perl5/x86_64-linux-thread-multi/Devel/Cover/Report/Html_minimal.pm line 677.

из документации мне неясно, как я могу предоставить эти опции.

  • Я думаю, вы должны приводить аргументы в строке -MDevel::Cover, как в -MDevel::Cover=-dir,.. Более того, я действительно не думаю, что inc аргументы делают то, что вы хотите: они указывают файлы, которые нужно игнорировать, например модули в @INC. Я не тестировал это, у меня нет D :: C на этой машине. Philip Potter 03.01.2011
  • Вопрос был перенесен на nntp.perl.org/group/ perl.qa/2011/01/msg12662.html и уже ответил там. daxim 03.01.2011

testingcode-coverageperl

Ответы

Ответ 1 · рейтинг 1 · DVK

cover фактически не генерирует статистику покрытия, а только сообщает об этом IIRC.

Кроме того, +inc, похоже, должен быть частью PERL5OPT (через запятую, чтобы -M передать их в import(), например -MDevel::Cover=+inc,"/sometething")

Я могу ошибаться - я использую Devel :: Cover только при запуске файлов .t, поэтому никогда не пытался использовать подход "все модули в каталоге".

Перевод вопроса и ответов сообщества Stack Overflow, лицензия CC BY-SA. Оригинал на Stack Overflow.

Похожие материалы