Ich versuche, Junit Tests zu machen. Ich möchte sie starten, indem ich nach einer Methode im CMS-System frage. Weil ich Plugins teste. Das Problem ist, dass ich diese Ausnahme bekomme und ich weiß nicht warum. Naah Ich finde, dass das Problem sein könnte, dass ich JUnit 4.8.2 benutze, aber wenn ich den Test in Eclipse ausführe, hat alles gut funktioniert. Also kann ich keine Lösung finden. Hier ist der Fehler:Warum wird die Ausnahme "AssumptionViolatedException" abgerufen? Junit 4.8.2
org.apache.velocity.exception.MethodInvocationException: Invocation of method
'getTest' in class nl.company.cms.three.viewtool.LoginViewTool threw exception
java.lang.NoClassDefFoundError: org/junit/internal/AssumptionViolatedException at
working/2a90929a-3fbf-43e9-9961-4a40279ec907_5c6e0bff-cfeb-44c6-86e2-
a0ba40e7b66c.field[line 1, column 15]
Hier ist der Code meiner Klasse und Testklasse: Klasse, die den Test starten ruft:
public String getTest(){
Result r = org.junit.runner.JUnitCore.runClasses(MyTestClass.class);
if(r.getRunCount() > 0){
String s = "Failcount = " + r.getFailureCount() + " // " +
r.getRunCount() + " in " + r.getRunTime() + " ms";
System.out.println(r.getFailures().get(0).getTrace());
System.out.println("Runcount: "+r.getRunCount());
System.out.println("Runtime: "+r.getRunTime());
System.out.println("Ignore count: "+r.getIgnoreCount());
System.out.println("Failure count: "+ r.getFailureCount());
return s;
}
else{
return "Something ging kei verkeerd jonge!";
}
}
Prüfklasse:
public class MyTestClass {
@Test
public void testMultiply() {
CustomLoginViewTool tester = new CustomLoginViewTool();
assertEquals("Result", 40, tester.multiply(10, 5));
}
@Test
public void testMultiply1() {
CustomLoginViewTool tester = new CustomLoginViewTool();
assertEquals("Result", 50, tester.multiply(10, 5));
}
@Test
public void testMultiply2() {
CustomLoginViewTool tester = new CustomLoginViewTool();
assertEquals("Result", "ASDF", tester.multiply(10, 5));
}
@Test
public void testMultiply3() {
CustomLoginViewTool tester = new CustomLoginViewTool();
assertEquals("Result", 50, tester.multiply(10, 5));
}
@Test
public void testMultiply4() {
CustomLoginViewTool tester = new CustomLoginViewTool();
assertEquals("Result", 47, tester.multiply(10, 5));
}
@Test
public void testMultiply5() {
CustomLoginViewTool tester = new CustomLoginViewTool();
assertEquals("Result", 50, tester.multiply(10, 5));
}
}
Ich möchte die Tests über das CMS-System starten. Um nach den Tests im CMS-System zu fragen, müssen Sie Velocity-Code verwenden. Wenn ich es frage, bekomme ich diesen Fehler. Wenn ich die Methode zu etwas ändere, wo ich JUnit nicht verwende, funktioniert es. Aber wenn ich JUnit darin verwenden möchte, erhalte ich diesen Fehler. – Gynnad
Fügen Sie JUnit dem Klassenpfad Ihres CMS-Systems hinzu. –
Vielleicht funktioniert das! :) Ich teste es jetzt .. Und soweit ich sehen kann, funktioniert es! Ich werde einen größeren Test machen und wenn es funktioniert, werde ich Ihnen sehr danken! – Gynnad