我正在尝试在 Windows 7 上使用带有活动状态 Perl 的证明 / TAP::Harness 获取颜色(颜色)输出。
实际测试运行良好,只是没有颜色输出。
我在使用 Strawberry Perl 和 WinXP 时遇到了类似的问题。
我无法使用 *nix 和 cygwin 或其他第三方 xterm,它们都会为输出着色。
我知道它有点挑剔,但我想我已经对“绿色”上瘾了:-)
有简单的解决方法吗?- 在激活状态网站上看不到任何东西 - 我正在考虑提出一个错误。有关调试或检查什么的任何指导?
是否值得编写我自己的格式化程序?
在此先感谢您的帮助。
有关已安装模块和尝试的方法的更多详细信息...
这些已安装并且据我所知正在工作
Win32::Console::ANSI;
Term::ANSIColor;
该测试脚本有效:
#!/usr/bin/perl
use strict;
use warnings;
use Win32::Console::ANSI;
use Term::ANSIColor;
print "One fish\n";
print "Two fish\n";
print color("red"), "Red Fish\n", color("reset");
print color("blue"), "Blue Fish\n", color("reset");
我试过了:
prove
prove -c
并使用以下带有和不带有格式化程序的测试工具程序,但我假设默认情况下颜色是打开的。
#!/usr/bin/perl
use strict;
use warnings;
use TAP::Harness;
my @tests = glob( 't/*.t' );
my $harness = TAP::Harness->new();
$harness->runtests( @tests );
我还安装了 HTML 格式化程序,它似乎正在工作。
prove --formatter=TAP::Formatter::HTML
跑步:
prove --formatter=TAP::Formatter::Color
在 x:/Perl/site/lib/TAP/Harness.pm 第 679 行通过包“TAP::Formatter::Color”给出无法定位对象方法“详细程度”。
谢谢迈克