Как выполнить тесты Perl, расположенные в нескольких файлах? - PullRequest
1 голос
/ 29 апреля 2011

Почему следующий код выполняет тесты только из файла 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']);

Ответы [ 2 ]

2 голосов
/ 30 апреля 2011

На самом деле, он запускает тесты с check1.t при вызове check2.t. Как указывал Даворг, runtests ожидает список тестов, а не массив ссылок на тесты. Причина, по которой он работает, заключается в том, что runtests также позволяет вводить тестовую запись в форме [ 'filename', 'comment' ], где filename - это имя тестового файла, а comment - строка для отображения. (Это задокументировано в базовом классе, TAP :: Harness .)

0 голосов
/ 29 апреля 2011

Он даже запускает тесты из check2.t? Документация для модуля гласит, что runtests принимает список тестовых файлов, а не ссылку на массив. Попробуйте изменить строку runtests на:

$harness->runtests('check1.t', 'check2.t');
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...