Eclipse Plug-in Testausführung für JUnit4

8

Ich habe eine JUnit4 -Testsuite und möchte sie unter der JUnit Plug-in Test run-Konfiguration ausführen.

Er wird erfolgreich übergeben, wenn er durch die JUnit Test -Konfiguration läuft, aber für das Plug-in-Conf schlägt er auf verschiedene Arten fehl.

Wenn ich zum Beispiel JUnit4TestAdapter verwende, scheitert es mit ClassCastException , und wenn ich versuche, es nur über die @RunWith Annotation auszuführen, schreibt es den Fehler "Keine Methoden gefunden". Für beide Implementierungen verwende ich JUnit4 Test Runner Einstellung innerhalb der Laufkonfiguration.

Ich benutze

  • Eclipse Neon.1a Release (4.6.1)
  • Jdk 1.8
  • Verknüpfen von JUnit 4.1 lib mit dem Plugin.

Im ersten Fall scheint Eclipse die JUnit3-Version beim Ausführen der Suite zu verwenden. Hier ist es:

%Vor%

Und Ausnahme ist:

%Vor%

Beim Starten des Tests habe ich eine seltsame Logmeldung in der Konsole:

%Vor%

Ich sehe, dass diese Bibliothek auf dem Platz ist, aber ich kann nicht verstehen, warum sie nicht geladen wird. Für JUnit3 Test Runner-Einstellung wird junit3 lib geladen. Es gibt einige Fehler im Zusammenhang mit solchen Problemen (wie dies ), aber es ist wirklich schwer zu verstehen, was kann ich in diesem Fall tun.

Für den zweiten Fall versuche ich einfach die einfache JUnit4 case auszuführen, ohne die JUnit4TestAdapter zu verwenden, aber es kann keine Methode finden.

Das Neuladen der Eclipse und das Umbenennen der Methoden hat nicht geholfen. Was kann ich in diesem Fall tun?

    
Michael Zhavzharov 04.05.2017, 16:43
quelle

1 Antwort

3

Ich habe festgestellt, dass es einige Probleme gibt. Zuerst überlege ich eins nach dem anderen, das Problem zu lösen.

  

Problem Nr. 1: Für die erforderliche Ausführungsumgebung ist keine Übereinstimmung verfügbar: J2SE-1.5

     

Problem # 2: java.lang.ClassCastException: junit.framework.JUnit4TestAdapter kann nicht in umgewandelt werden   junit.framework.Test

Lösung für Problem # 1:

Erste Lösung:

  1. Klicken Sie mit der rechten Maustaste auf Ihr Projekt
  2. Klicken Sie auf Eigenschaften
  3. Klicken Sie auf die Option "Java Compiler" im linken Menü
  4. Ändern Sie rechts unter JDK compliance section zu "1.8"

Zweite Lösung:

Wenn Sie maven in Ihrem Projekt verwenden, können Sie die Datei pom.xml wie folgt ändern:

%Vor%

Ressourcenverknüpfung: Maven" spezifiziert die Ausführungsumgebung J2SE-1.5 ", obwohl ich ihn auf 1.7 geändert habe

Lösung für Problem # 2:

Der JUnit-Runner ist von JUnit 3.8 abhängig. Es wird nicht verwendet, aber ohne es kann die ganze Plattform nicht initialisiert werden. Sie benötigen also 2 Versionen wie die folgenden

Überprüfen Sie, ob Sie unter den Plugins

haben %Vor%

Wie wird nach JUnit gesucht?

In Eclipse, überprüfen Sie bitte in 2 Abschnitte.

  1. Überprüfen Sie Ihr Projekt Properties->Java Build Path->Libraries (tab)
  2. Überprüfen Sie die Run Configurations->JUnit->Classpath (tab) des Projekts

Wie behebt man?

Um den Fehler zu beheben, stellen Sie sicher, dass Sie org.junit 3.8 im Zielplattform !

Alles Gute geht an Ein Paul .

Ressourcenverknüpfung:

Ссылка

Aaron Digulla hat das Folgende kommentiert:

  

Trotz der Tatsache, dass org.eclipse.xtext.junit4 org.junit importiert   4.5.0, org.eclipse.xtext.junit (beachten Sie die fehlende "4" am Ende) scheint eine Abhängigkeit zu JUnit 3.8 zu haben. Nach dem Hinzufügen der alten, veraltet   JUnit Bundle, die Plugin Tests gestartet.

    
SkyWalker 10.05.2017 17:28
quelle