1

我在 Perl/Windoes 中使用来自 CPAN 的 TAP::Formatter::HTML 模块。我注意到有一个选项允许我们在文件中重定向 HTML 输出,即。输出文件()。

但是,我想我错过了一些东西。

我尝试使用 $fmt->output_file($outputfile) 但无济于事。

它给了我以下错误:Can't locate object method "output_fh" via package "TAP::Formatter::HTML" at tap .pl line 12。

有人能告诉我我错过了什么吗?一个解释如何重定向输出的示例代码将是理想的。

我检查了一个名为“knb”的用户的帖子,他似乎使用过这个模块。我希望他也能读到这篇文章。

谢谢!

代码:

use TAP::Harness;
use IO::Handle;
use TAP::Formatter::HTML;
use File::Glob::Windows;
use TAP::Parser::Aggregator;

my $fmt = TAP::Formatter::HTML->new;

my @tests = glob( 'te*.pl');
my $harness = TAP::Harness->new( { formatter => $fmt, merge => 1 } );

$fmt->output_file('output.html');

$harness->runtests(@tests);
4

1 回答 1

1

我在 Windows 上安装它时遇到了一些问题(需要跳过测试才能继续),但是您的简化脚本对我有用:

use TAP::Harness;
use TAP::Formatter::HTML;

my $fmt = TAP::Formatter::HTML->new;
my $harness = TAP::Harness->new( { formatter => $fmt, merge => 1 } );
$fmt->output_file('output.html');

$harness->runtests('1.t');

output.html这个带有测试结果的构建文件。然而,它没有正确包含 javascripts 和 css 文件。

于 2011-06-29T20:22:46.563 回答