hin und wieder starte ich JUnit-Tests aus Eclipse mit
Ausführen als & gt; JUnit Plug-in-Test
Standardmäßig geht Eclipse davon aus, dass Sie etwas ausführen, das eine Workbench erfordert und wählen Sie im Abschnitt "Main" der Startkonfiguration
LaunchConfig & gt; Haupt & gt; Programm zum Ausführen & gt; Führen Sie eine Anwendung aus & gt; org.eclipse.ui.ide.workbench
Ich kann verstehen, warum dies der Standard ist, aber für mich (und für alle in unserem Team) ist dies nie der Fall. Wir müssen unsere JUnit Plug-in Tests immer als
ausführenLaunchConfig & gt; Haupt & gt; Programm zum Ausführen & gt; Führen Sie eine Anwendung aus & gt; [Keine Anwendung] Headless-Modus
Wie ändere ich dieses Standardverhalten? Ich verwende derzeit Eclipse 4.4.
Eine benutzerdefinierte LaunchConfiguration -Extension scheint ein praktikabler Lösungsansatz zu sein. Was ich getan habe, war eine neue, benutzerdefinierte LaunchConfiguration -Erweiterung zu erstellen, die zu 99.999% auf der JUnitLaunchConfiguration basiert. Ich musste nur eine benutzerdefinierte
hinzufügen %Vor%, wodurch das
überschrieben wird %Vor%Methode, um die Anwendungsparameter nach unseren Bedürfnissen anzupassen.
%Vor%Um das LaunchConfig-Dialogfeld mit dem Standardparameter initialisieren zu können, musste ich:
BlaBlaPluginJUnitMainTab
erweitert PluginJUnitMainTab
BlaBlaJUnitProgramBlock
) BlaBlaJUnitProgramBlock
in der Methode BlaBlaJUnitPluginTestTabGroup.BlaBlaPluginJUnitMainTab.createProgramBlock()
setDefaults
-Methode (nicht sicher, ob es wirklich notwendig ist) in BlaBlaJUnitProgramBlock
BlaBlaJUnitProgramBlock
und passen Sie den Parameter auch dort an. Führt zu folgendem Ergebnis:
Diese Antwort ist ein Beinahe-Fehler:
Wenn Sie das nächste Mal einen Test starten möchten, der noch nicht über eine gute Startkonfiguration verfügt:
Run As > Run Configurations ...
auf (d. h. wählen Sie noch nicht JUnit Plug-in Test
!) New Launch Configuration
(obere linke Ecke) Nun sollte die neu erstellte Konfiguration die konfigurierten Werte von der guten Konfiguration "erben".
Die Wahrheit ist:
Wenn Sie nur nach der Bequemlichkeit suchen, speichert eclipse die letzte Ausführung. Nachdem Sie "run as" verwendet und "ur run config" gespeichert haben, verwenden Sie einfach die Schaltfläche "Ausführen als" in der Symbolleiste. Außerdem kommt diese Eclipse mit Geschmack für Tester, Sie können das überprüfen. Auch wenn Sie über Unit-Tests sprechen, sehen Sie, ob Sie Ameisen Build verwenden können oder noch besser konvertieren zu Maven-basierten Projekt. Maven hat Unterstützung für das Testen integriert.
Es scheint eine einfache und effektive Heuristik zu geben, die entscheidet, ob ein JUnit Plug-in Test kopflos oder mit einer Anwendung ausgeführt werden soll:
Stellen Sie sicher, dass das Plug-in, das Ihre Tests enthält, keine Abhängigkeiten von irgendetwas org.eclipse.ui
hat.
[No Application - Headless Mode]
standardmäßig für neu erstellte Startkonfigurationen ausgewählt. Run a product
, mit s.t. wie org.eclipse.platform.ide
vorausgewählt. Tags und Links eclipse ide java eclipse-plugin junit