为什么以下代码只从check2.t文件执行测试?
#!/usr/bin/perl -w
use strict;
use warnings;
use Modern::Perl;
use TAP::Harness::JUnit;
my $harness = TAP::Harness::JUnit->new({
xmlfile => 'output.xml',
namemangle => 'hudson',
merge => 1
});
$harness->runtests(['check1.t', 'check2.t']);
答案 0 :(得分:2)
实际上,它在调用check1.t
时从check2.t
运行测试。正如davorg指出的那样,runtests
需要一个测试列表,而不是一个测试的arrayref。它似乎有用的原因是runtests
还允许测试条目采用[ 'filename', 'comment' ]
格式,其中filename
是测试文件的名称,comment
是要显示的字符串。 (这是基类documented中的TAP::Harness。)
答案 1 :(得分:0)
它甚至从check2.t运行测试吗? documentation for the module表示runtests获取测试文件列表,而不是数组引用。尝试将runtests行更改为:
$harness->runtests('check1.t', 'check2.t');