Unit-Tests im selben Paket wie der Quellcode in Java einschließen

8

Ich komme nach einem langen Aufenthalt in der Ruby-Welt wieder in Java und habe eine Frage zu JUnit-Tests und der Quelle, die ich gerade teste.

Wenn ich ein Paket mit Grafikcode für meine Firma habe, nennen wir es com.example.graphics , sollte ich meine Tests auch in dieses Paket aufnehmen oder sollten sie in einem separaten Paket enthalten sein, wie com.example.graphics.test ?

    
TheDelChop 24.05.2010, 16:30
quelle

4 Antworten

31

Im selben Java-Paket ist in Ordnung. Es ist tatsächlich notwendig, wenn Sie auf package-private Klassen, Methoden oder Felder zugreifen müssen. Die Quelle sollte jedoch logisch getrennt sein:

%Vor%     
Brett Kail 24.05.2010, 16:32
quelle
1

Wenn Sie nicht auf private Klassen zugreifen müssen, ist es eigentlich eine Frage des Geschmacks.

Manchmal neige ich sogar dazu, ein zusätzliches Testprojekt zu erstellen, das auf das Produkt-Projekt verweist. Daher sind Produkt und Test klar getrennt.

    
Philipp Andre 24.05.2010 16:36
quelle
1

Ich persönlich halte alle meine Tests im selben Paket, aber im Testbaum von Maven (den ich immer für Java-Projekte verwende) . Erwäge, Maven auch für deine Builds zu verwenden - das erspart dir eine Menge Arbeit. Es erzwingt eine ähnliche Struktur wie bkail erwähnt, bietet Ihnen aber viel mehr als ein standardisiertes Projektordnerlayout - Projektlebenszyklus (clean, compile, package, test), Plugins, etc.

    
Bozhidar Batsov 24.05.2010 16:52
quelle
0

Das Einfügen von Tests in ein separates Paket verhindert das Problem, dass Sie versehentlich eine Methode oder Klasse im Paketbereich verwenden, die von den Clients verwendet werden soll.

    
soru 24.07.2010 19:29
quelle

Tags und Links