Как я могу запустить maven тесты против предыдущего развернутого артефакта того же артефакта? - PullRequest
4 голосов
/ 23 декабря 2010

У меня есть артефакт abc, у которого есть несколько тестов. У меня есть разные версии ABC в моем хранилище. Теперь я хочу иметь возможность запускать последние тесты для «старой сборки» проекта.

Я пытался добавить сам артефакт к тестовым зависимостям, но это (конечно) приводит к циклической эталонной ошибке реактора Maven при построении тестов через:

Компилятор MVN: testCompile mvn верный: тест

Есть ли какой-нибудь умный способ запустить тесты с предыдущей старой сборкой / артефактом?

Должен ли я создать новый файл pom.xml, в котором я определяю выполнение сольного теста? Или я должен добавить постфикс к моему текущему артефакту при выполнении тестов? (Это позволит избежать циклической ошибки ссылки)

Ответы [ 2 ]

3 голосов
/ 13 октября 2011

Разделите тесты на отдельный модуль / проект, который зависит от классов, которые он тестирует.Затем создайте отдельные профили, в которых вы изменяете зависимость для более старых версий.

1 голос
/ 23 декабря 2010

Проблема, которую я предвижу в том, что вы пытаетесь сделать, заключается в том, что фаза пакета наступает после фазы тестирования жизненного цикла maven. Что для меня подразумевает, что maven запускает модульные тесты для скомпилированных классов, а не для физического jar-файла (генерируемого на этапе пакета) Поэтому вам придется заменить содержимое папки projects / target / classes на классы в «старом» фляге.

...