5

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

fcgi/*.fcgi

我非常希望将这些内容包含在我的报道报告中。事实上,我很想确保我可以在 、 和 中包含所有内容(无论扩展名如何)lib/fcgi/而在任何其他目录中都不包含任何内容。utils/

这是我的许多尝试之一:

HARNESS_PERL_SWITCHES=-MDevel::Cover=+inc,fcgi,+inc,lib,+inc,util prove -rl t

失败!

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

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

4

1 回答 1

3

好吧,我举了你的例子,稍微摆弄了一下,它似乎对我来说用最小的 Makefile.PL 和覆盖测试工作得很好。请克隆这个: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';
于 2012-07-06T16:04:16.397 回答