对于 Devel::Cover 覆盖特定路径中的所有文件

Ovi*_*vid 5 testing perl devel-cover

我的任务是清理一些写得很差的遗留代码,但测试数量惊人。其中一些测试在如下文件中运行代码:

fcgi/*.fcgi
Run Code Online (Sandbox Code Playgroud)

我非常想将这些包括在我的报道中。其实,我很想以确保我可以包括一切(无论扩展名)中lib/fcgi/以及utils/没有任何其他目录。

这是我的众多尝试之一:

HARNESS_PERL_SWITCHES=-MDevel::Cover=+inc,fcgi,+inc,lib,+inc,util prove -rl t
Run Code Online (Sandbox Code Playgroud)

失败!

我还尝试过创建简单的 Build.PL 或 Makefile.PL 脚本,并在运行诸如“cover -test”或“./Build testcover”之类的内容时不断收到“未定义测试”。

这是 Devel::Cover 0.88 和 perl 版本 5.12.2

Mit*_*ldu 3

好吧,我拿了你的例子,稍微摆弄了一下,它似乎对我来说用最小的 Makefile.PL 和 cover -test 工作得很好。请克隆此:git://gist.github.com/3061026.git

自述文件包含我的系统上发生的情况。

具体来说,在我的一个测试文件中,我添加了:

use 5.12.0;
use Test::More;

use lib 'lib';

use Foo;
require 'fcgi/foo.fcgi';   # <====== pull in an fcgi file

is craptastic(), 'This is craptastic',
    'We have run an fcgi/*fcgi test';
Run Code Online (Sandbox Code Playgroud)