Ответ 1
Да, вы можете, но это не просто.
Итак, у вас есть Модуль-A и Модуль-B.
Модуль-B имеет TestClass
, который, возможно, расширяет AbstractClass или использует некоторые статические помощники из Module-A
Примечание.. Это будет работать только в intellij, если вы используете maven или gradle, вам нужно будет проверить, что это все равно будет построено нормально.
Вот что вам нужно сделать.
- Перейти к Структура проекта...
(Ctrl+Alt+Shift+S - win/linux)
- Откройте модули и посмотрите вкладку Модуль-A Путь.
- Обратите внимание на тестовый выходный путь или скопируйте его. Это может быть примерно так:
C:\dev\projects\myProject\moduleA\build\testclasses
или аналогичный. - Откройте модули и выберите Модуль-B и посмотрите вкладку Зависимости.
- Возможно, у вас уже есть зависимость от Module-A для времени компиляции, и это нормально. Нажмите на + или введите
(Alt+Insert)
и добавьте новую библиотеку (№ 2 по опциям) - На экране выбора библиотек выберите кнопку Новая библиотека.... Выберите опцию Java.
- В диалоговом окне, которое появляется в папке сборки, у вас было выше
C:\dev\projects\myProject\moduleA\build\testclasses
, и нажмите ОК. Теперь у вас есть классы для вашего модуля-A. Назовите его чем-то подходящимModule-A Tests
и измените параметр Уровень на Библиотека модулей. - Нажмите кнопку +
(Alt+Insert)
, чтобы добавить источник. Перейдите к тестовым файлам src. E.G.:C:\dev\projects\myProject\moduleA\src\test
и добавьте это, и теперь у вас также есть источники.- Нажмите ОК, и вы вернетесь в диалог Структура проекта.
- Теперь у вас будет новая библиотека, добавленная к вашим зависимостям. Измените Сфера на Тест
- Нажмите ОК внизу и сделанный. Возможно, вам понадобится сделать/очистить проект.
И теперь у вас есть привязки тестов, связанные между модулями.
Если вы можете подумать о лучшем решении, сообщите мне, но это самый простой способ, который я нашел для этого.