2016-06-01 4 views
2

Ich habe Projekt, wo ein Benutzer erstellt und hochlädt jar gefüllt mit JUnit Tests. Mein Projekt läuft in Spring und aus irgendeinem Grund wird es nicht ausgeführt. Ich kann einige JUnit Tests fest codieren und sie funktionieren gut, aber sobald ich den genauen Code in eine .jar Datei setze, läuft die Datei nicht. Dies ist meine erste Frage zu Stack Overflow und ich würde mich über jede Hilfe freuen.Spring läuft externe JUnit Jar verursacht java.lang.Exception: Keine runnable Methoden

Hier ist mein Code

simpletest.jar

import org.junit.Test; 
public class simpletest { 
@Test 
public void sayHello() { 
    System.out.println("Simple test ran"); 
}} 

runjar.java

URL[] classLoaderUrls = new URL[]{new URL("file:///c:/Work/simpletest.jar")}; 
URLClassLoader urlClassLoader = new URLClassLoader(classLoaderUrls); 
Class<?> appiumClass = null; 
try { 
    appiumClass = urlClassLoader.loadClass("simpletest.simpletest"); 
} catch (ClassNotFoundException e) { 
    // TODO Auto-generated catch block 
    e.printStackTrace(); 
} 
// Run the class using JUnitCore 
JUnitCore junit = new JUnitCore(); 
Result result = junit.run(appiumClass); 
//Display if test was successful 
System.out.println(result.wasSuccessful()); 
+0

Was meinen Sie mit dem Hochladen einer JAR-Datei? Zu einem Maven-Repository? – khmarbaise

Antwort

1

Wenn Sie laden die URLClassLoader Sie die aktuelle ClassLoader dafür liefern müssen Laden Sie die erforderlichen JUnit-Bibliotheken.

 //Code to run junit test 
     URLClassLoader urlClassLoader = new URLClassLoader(classLoaderUrls, getClass().getClassLoader()); 
+0

Vielen Dank. Ich habe so viel Zeit damit verbracht, das Problem zu beheben. Ich sollte auch beachten, dass das Problem im Zusammenhang mit dem Frühling stand. Ich werde die Frage aktualisieren, um dies zu berücksichtigen. – Alslayer