我在perl中使用TAP::Harness,如下所示:
$harness = TAP::Harness->new({
formatter_class => 'TAP::Formatter::Console',
merge => 1,
verbosity => 1,
normalize => 1,
color => 1,
test_args => ['--url', $url, '--session', $session],
});
稍后我会调用$ harness-> runtests(),传递几个测试的数组。
问题是,在我的所有测试中:
use Data::Dumper;
print Dumper \@ARGV;
输出:
$VAR1 = [];
在底层测试中,@ arGV中是否没有test_args出现?我需要将一些选项传递给每个测试。
答案 0 :(得分:4)
您的初始化是否有效?我必须将hashref传递给构造函数才能使其工作:
use TAP::Harness;
$harness = TAP::Harness->new({
formatter_class => 'TAP::Formatter::Console',
merge => 1,
verbosity => 1,
normalize => 1,
color => 1,
test_args => ['--url', $url, '--session', $session],
});
$harness->runtests('simple.t');
在测试中simple.t
:
use Test::More;
use Data::Dump qw(dump);
dump [@ARGV]; # prints ["--url", "", "--session", ""]
done_testing;