Tak można, ale to nie jest proste.
Więc trzeba Module-A i Module-B.
Module-B ma TestClass
że może rozciąga się AbstractClass lub wykorzystuje kilka statycznych pomocników z module-A
Uwaga: to będzie działać tylko w IntelliJ, jeśli jesteś przy użyciu maven lub gradle będziesz musiał sprawdzić, czy to wszystko będzie w porządku.
Oto, co musisz zrobić.
- Goto Struktura Project ...
(Ctrl+Alt+Shift+S - win/linux)
- Goto Moduły i spojrzeć na Module-A „s Path Tab
- Zanotuj ścieżkę wyjścia testowego lub skopiować ten. Może to być coś takiego:
C:\dev\projects\myProject\moduleA\build\testclasses
lub podobne.
- Przejdź do Modułów i wybierz opcję Moduł-B i spójrz na jej zakładkę Zależności.
- Można już zależność od Module-A tu na czasie kompilacji i to ok.Click na + lub wpisz
(Alt+Insert)
i dodać nową bibliotekę (nr 2 od opcji)
- Na wybierz ekran bibliotek wybierz przycisk Nowa biblioteka .... Wybierz opcję Java.
- W oknie dialogowym, które się pojawi, przejdź do folderu kompilacji, który miałeś powyżej
C:\dev\projects\myProject\moduleA\build\testclasses
i kliknij OK. Będziesz teraz miał tutaj klasy dla twojego Module-A.Nazwij ją odpowiednią nazwą Module-A Tests
i zmień opcję poziomu na Biblioteka modułów.
- Kliknij przycisk +
(Alt+Insert)
, aby dodać również źródło. Przejdź do testowych plików src. Np .: C:\dev\projects\myProject\moduleA\src\test
i dodaj to, a otrzymasz również Źródła dodane.
- Kliknij OK i wrócisz do okna Projektu Struktura.
- Teraz będziesz mieć nową bibliotekę dodaną do twoich zależności. Zmień Zakres do test
- Naciśnij OK na dole i gotowe. Być może trzeba będzie wykonać/wyczyścić projekt.
A teraz masz depencies testowych umieszczony między modułami.
Jeśli możesz wymyślić lepsze rozwiązanie, proszę daj mi znać, ale jest to najprostszy sposób, jaki znalazłem.
Wyniki testów należy dodać do ścieżki klasy. Czy twój projekt został zaimportowany z Maven? – Nik
możliwy duplikat [Udostępnianie kodu testowego w Maven] (http://stackoverflow.com/questions/174560/sharing-test-code-in-maven) – thecoop