jon*_*ers 2 testing perl unit-testing
我在 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],
});
Run Code Online (Sandbox Code Playgroud)
一段时间后,我调用 $harness->runtests(),传递一系列测试。
问题是,在我所有的测试中:
use Data::Dumper;
print Dumper \@ARGV;
Run Code Online (Sandbox Code Playgroud)
输出:
$VAR1 = [];
Run Code Online (Sandbox Code Playgroud)
test_args 在底层测试中没有出现在@ARGV 中吗?我需要将一些选项传递给每个测试。
你的初始化工作吗?我必须将 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');
Run Code Online (Sandbox Code Playgroud)
在测试中simple.t:
use Test::More;
use Data::Dump qw(dump);
dump [@ARGV]; # prints ["--url", "", "--session", ""]
done_testing;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1375 次 |
| 最近记录: |