Скорее всего, вы делаете что-то не так. Но если очень хочется - напишите собственный скрипт run-tests.pl, который 1. Если получает аргумент all - прогоняет все тесты 2. Если получает список тестов - прогоняет только их
Для совместимости с prove и остальными можете использовать переменную окружения, типа USING_RUN_TESTS=1 или TESTS_DATA_INIT=1 - если она установлена - ничего не создаем и не удаляем, если не установлена - делаем инициализацию и очестку в самих тестах. ИЛИ напишите один мага-тест, который прогоняет остальные (лежащие в .pm файлах) в зависимости например от тех же переменных окружения. 15 марта 2012 г. 3:25 пользователь Alexandr Gomoliako <[email protected]>написал: > > оставить это для make clean. Но это если речь идёт о файлах. А если > > предположить, что инициализация подразумевает какие-то более хитрые > > действия, хотя бы, например, запись в БД? > > Ну если это SQLite, DB_File или что-то такое, то они же тоже простые файлы > :) > А для mysql и т.д. уже нужно что-то специально делать, можно через > %ENV проверять или plan 'skip_all', если нету. Получится, что > нестандартная часть не будет запускаться, там где не надо. > > В общем у меня так: > 1. В каждом тесте создается директория tmp/tXX прямо в текущей > директории, XX номер теста. > 2. Данные чистятся непосредственно перед использованием, чтобы не > заботиться о make clean. > 3. Отдельный clean хук, чтобы удалить tmp/. > > Это позволяет избежать проблем с системным /tmp (особенно > переполнением при ошибках), а также запускать тесты параллельно, как > заметил Руслан, сохранять данные для дальнейшего расследования, > выводить их сразу через diag, что для cpantesters и разных CI очень > важно и т.д. > -- > Moscow.pm mailing list > [email protected] | http://moscow.pm.org > -- С уважением, Александр Личный блог: http://eax.me/ Мой форум: http://it-talk.org/ Мой Twitter: http://twitter.com/afiskon
-- Moscow.pm mailing list [email protected] | http://moscow.pm.org
