Maven тест переходной области - PullRequest
0 голосов
/ 19 июня 2019

Из maven docs мы получаем, что если прямая зависимость нашего проекта A имеет тест области, а его транзитивная зависимость имеет тест области, то эта транзитивная зависимость не будет взята в testpath classpath нашего проекта.A

[Project A] -> [Direct Dependency of A , say  X (scope test)] -> [Direct dependency of X , say Y (scope test)]

Это заставляет меня думать о сценарии (возможно или нет, вы решаете)

Если выполнение какого-либо теста в нашем проекте A зависит от кода какого-либо теста в проекте X,тогда maven никогда не сможет запустить тест A, поскольку он никогда не будет принимать Y в тестовом пути к классам.

В таком случае, что мы должны делать?Если вы говорите, что такой сценарий не может существовать, почему?

1 Ответ

2 голосов
/ 19 июня 2019

Обычно тесты не включаются в jar-файл проекта (иначе это не тесты, а часть проекта).

Если вы хотите повторно использовать тестовый код в другом проекте, вам следует создать отдельный jar-файл, содержащий тестовые классы, и поместить его в список ваших зависимостей с областью действия «test». Другими словами, если ваш проект A зависит от проекта X, вы должны явно указать это, независимо от того, является ли это тестовым кодом или нет.

Для получения дополнительной информации проверьте: Как создать банку с тестовыми классами

...