Grüß euch,
ich bin gerade dabei meine eigene Testrunnerumgebung für JUnit zu schreiben.
Starten lassen und die Testsdurchlaufen kann er, allerdings happert es bei der Ausgabe.
Ich verstehe z.B. nicht ganz wie Descriptions eingesetzt werden und wofür.
Prinzipiell will ich mit dem JUnitCore (> der 4.x Runner) eine beliebige Testsuite durchlaufen lassen, welche Selenium Tests durchführt.
Das kann er bereits.
Des weitere kann ich mit dem Result die Anzahl der gelaufenen Tests sowie die Anzahl der Fehlerhaften Tests ausgeben.
1.
Wo ich Hilfe brauche: Wie kann ich eine für den User wissenswerte laufende Fehlerausgabe/Resultausgabe bekommen. (also nach jedem Testcase die Fehlermessage)
2.
Der Runner läuft in einem eigenen Thread. Zusätzlich rennt ein anderer Thread, der das Result mittels while Schleife auf einen fertigen Testcase abhört. Allerdings scheint mir das Result nicht schnell genug upzutaten (oder die while Schleife?). Bei sehr schnellen Tests springt er von 0 Tests abgeschlossen auf 5 Tests abgeschlossen. Lösung dazu?
Hier Ausschnitte aus meinem code (bitte über die conventions mal hinwegzusehen):
Klasse:
Junit Thread:
While Schleifen Thread:
ich bin gerade dabei meine eigene Testrunnerumgebung für JUnit zu schreiben.
Starten lassen und die Testsdurchlaufen kann er, allerdings happert es bei der Ausgabe.
Ich verstehe z.B. nicht ganz wie Descriptions eingesetzt werden und wofür.
Prinzipiell will ich mit dem JUnitCore (> der 4.x Runner) eine beliebige Testsuite durchlaufen lassen, welche Selenium Tests durchführt.
Das kann er bereits.
Des weitere kann ich mit dem Result die Anzahl der gelaufenen Tests sowie die Anzahl der Fehlerhaften Tests ausgeben.
1.
Wo ich Hilfe brauche: Wie kann ich eine für den User wissenswerte laufende Fehlerausgabe/Resultausgabe bekommen. (also nach jedem Testcase die Fehlermessage)
2.
Der Runner läuft in einem eigenen Thread. Zusätzlich rennt ein anderer Thread, der das Result mittels while Schleife auf einen fertigen Testcase abhört. Allerdings scheint mir das Result nicht schnell genug upzutaten (oder die while Schleife?). Bei sehr schnellen Tests springt er von 0 Tests abgeschlossen auf 5 Tests abgeschlossen. Lösung dazu?
Hier Ausschnitte aus meinem code (bitte über die conventions mal hinwegzusehen):
Klasse:
Java:
JUnitCore JTR = new JUnitCore();
Result JTRES = new Result();
RunListener JTRL = JTRES.createListener();
Thread th1 = new Thread(new FirstThread());
Thread th2 = new Thread(new SecondThread());
Thread th3 = new Thread(new ThirdThread());
Junit Thread:
Java:
String SuiteToRun = new String(tf_runts.getText());
Class<?> STR = Class.forName(SuiteToRun);
Request JTRQ = Request.classes(STR);
JTR.addListener(JTRL);
JTR.run(JTRQ);
Thread.sleep(500);
JTR.removeListener(JTRL);
System.out.println("i_finished");
i_finished = 1;
th2.join();
While Schleifen Thread:
Java:
int newruncount = JTRES.getRunCount();
System.out.println("BeginCount: "+JTRES.getRunCount()+"-"+newruncount);
while (i_finished == 0)
{
if (JTRES.getRunCount() == newruncount+1)
{
ta_cmd.setText(ta_cmd.getText()+"\n"+"Run Time: "+JTRES.getRunTime()*0.001+" - "+ JTRES.getRunCount() +": "+ "Description");
ta_cmd.setCaretPosition(ta_cmd.getText().length());
newruncount = newruncount+1;
}
else{}
}