你可能要考虑重写你的测试,以充分利用其具有在Perl美妙支持Test Anything Protocol的。
use Test::More;
my @files = glob("*.test");
plan tests => scalar @files;
for my $file (@files) {
(my $name = $file) =~ s/\.test$//;
system("program $file > $name.out");
is system("diff -urpb expected_$name.out $name.out > $name.diff"),
0, $name;
}
您可以直接运行这个 - TAP是人类可读的,输出会看起来像
1..100
OK 1 - test_a
确定2 - test_b
...
行100 - zargle_fnargle
,或者你可以在测试公顷内运行rness像prove
,它会给你一个很好的状态显示,同时测试运行和总结结果与输出像
100 .... OK
所有测试成功。
文件= 1,试验= 100,200挂钟秒(等等等等等等)
或也许
100 ....
#测试失败 'tricky_test'
# at test.t line 7
#失败测试'another_tough_one'
#at tests.t line 7
#看起来像是你失败了2次100次测试。
DIED。失败的测试3,54
失败2/100的测试中,98.00%好
(等等等等等)
这是一个非常有用的工具。 :)
+1自动获得测试文件:D – NawaMan 2009-11-06 07:35:50
+1,因为我同意NawaMan – 2009-11-06 09:41:39