Perl - TAP :: Harness и test_args - PullRequest
2 голосов
/ 20 июня 2011

Я использую TAP :: Harness в Perl, как это:

$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 = [];

Разве test_args не выходит в @ARGV в базовых тестах? Мне нужно передать некоторые параметры для каждого теста.

1 Ответ

4 голосов
/ 21 июня 2011

Ваша инициализация работает?Мне пришлось передать 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;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...