我正在通过 TAP::Harness 运行一些测试,现在我正试图从 TAP 解析器中获取所有单独的结果。我要做的是首先运行测试:
my $harness = TAP::Harness->new( { verbosity => 1, lib => [ 'blib/lib' ] } );
my $aggregator = $harness->runtests( @tests );
这很好用。然后我尝试按照 TAP::Parser 文档获取结果:
my @results;
my @parsers = $aggregator->parsers;
foreach my $prsr( @parsers ) {
while( my $result = $prsr->next ) {
push @results, { type => $result->type,
ok => $result->ok,
text => $result->as_string };
}
}
但是,这会导致@results
为空数组。
如果我Dumper
是单个 Parser 对象,我可以看到它们已经成功解析了测试结果:
bless( {
'tests_run' => 5,
'actual_passed' => [
1,
2,
3,
4,
5
],
....etc
我不知道如何从对象中获取测试结果。