Тайм-аут испытаний в Perl Test Harness

Как я мог тайм-аут вешать тесты в тестовом жгуте Perl?

Я пытался использовать Test::Timer модуль, но я не могу связать его с TAP::Harness чтобы иметь встроенную функцию тайм-аута для каждого теста. Кроме того, я не хочу проверять, занимает ли немного кода x время для завершения, я просто хочу запустить свои тесты и тайм-аут на случай, если они по какой-либо причине зависнут.

1 ответ

Недавно на PerlMonks был похожий вопрос.

Установить время:: Лимит.

Этот модуль позволит вам установить временные ограничения для отдельных тестовых файлов:

use Test::More;
use Time::Limit "30";   # 30 seconds, quote marks are necessary!

Или установите общий лимит времени для запуска всего набора тестов:

prove -MTime::Limit=120 t/*.t

Если вы используете forkprove вместо prove, тогда вам нужен ограничитель времени, чтобы убить всю группу процессов:

forkprove -MTime::Limit=-group,120 t/*.t
Другие вопросы по тегам