Как я могу использовать некоторые функции в скрипте Perl? - PullRequest
4 голосов
/ 05 февраля 2010

Я столкнулся с проблемой, которая требует повторного использования некоторых функций в другом скрипте Perl. Я пишу несколько тестовых сценариев. Тестовые сценарии в основном строятся друг на друге.

Скажем, сценарий 1 делает:

Некоторый код для подготовки теста. A. B. C. Некоторый код для определения успеха.

Тогда сценарий 2 делает:

Некоторый код для подготовки теста. A. B. C. D. E. Некоторый код для определения успеха.

Как я могу повторно использовать A.B.C сценария 1 в сценарии 2?

Вызов сценария 1 из сценария 2 не будет работать из-за кода, определяющего успех сценария. Каков наилучший способ сделать это?

Спасибо

Ответы [ 2 ]

10 голосов
/ 05 февраля 2010

Поместите функции в модуль и включите их из обоих файлов.

Подробнее см. http://perldoc.perl.org/perlmod.html.

5 голосов
/ 05 февраля 2010

Foo / Common.pm:

package Foo::Common;
use strict;
use warnings;
use parent 'Exporter';
our @EXPORT_OKAY = qw(frob borf);

sub frob {}
sub borf {}

1;

В каком-то скрипте или модуле дайте или возьмите use lib, чтобы получить Foo / Common.pm в @INC:

use Foo::Common qw(frob borf);
frob();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...