Я пишу тесты, которые требуют, чтобы внешнее программное обеспечение (локальный сервер Amazon DynamoDB) было установлено и запущено.Есть ли какой-нибудь способ сказать CPAN Testers , что делать?
Или я должен просто загрузить сервер и запустить его сам в настройках теста?Это потребует установки Java 6.x или новее.Поэтому я думаю, что вернулся к первому вопросу.
Если люди не знают, CPAN Testers - это группа людей, которые тестируют весь CPAN с использованием автоматизированных сценариев, называемых курильщиками.
Далееbackground:
В данный момент CPAN Testers показывает, что 227 машин проходят все тесты для Amazon :: DynamoDB, но это вводит в заблуждение, поскольку в настоящее время выполняется только один из более чем семи тысяч тестов: use_ok( 'Amazon::DynamoDB' );
.Остальные скрыты за unless
утверждениями:
unless ( $ENV{'AMAZON_DYNAMODB_EXPENSIVE_TESTS'} ) {
plan skip_all => 'Testing this module for real costs money.';
}
И значительное количество тестов не проходят .Я исправил это, но для тестирования требуется либо установить три переменные среды в среде тестера и деньги (текущий способ):
AMAZON_DYNAMODB_EXPENSIVE_TESTS=1
EC2_ACCESS_KEY=<user's AWS access key>
EC2_SECRET_KEY=<user's AWS secret key>
, либо установить локальную версию Amazon DynamoDB.Если этот модуль будет выпущен как есть, он будет выглядеть неисправным на всех машинах, на которых он работает, для которых не настроена предварительная среда (т. Е. Он будет ошибочно казаться сломанным, а не работать).