Hallo Leute,
ich habe ein kleines Problemchen. Ich bin für ne Weile bei nem Kunden der ne ziemlich große Java Applikation hat und automatisierte Tests einführen will.
Das Problem ist, eigentlich haben wir alle keine Ahnung davon wie man das so macht
Ich hab mich schon in der Vergangenheit immer mal ein wenig mit JUnit beschäftigt und ein wenig rumprobiert, von daher weiß ich zumindest grundsätzlich wie JUnit funktioniert.
Allerdings ist mein Eindruck von meinen bisherigen Erfahrungen her der dass ich mit JUnit ganz gut einfache Sachen testen kann, also Zahlen oder booleans als Rückgabewert habe und diese Werte entsprechend mit den assert Methoden gegen andere Werte testen kann.
Das Projekt hingegen ist eher darauf ausgelegt Werte per XML und anderen Formaten entgegenzunehmen, damit ein wenig zu arbeiten und die in die Datenbank zu schreiben. Die meisten Methoden sind dabei Void Methoden. Das Projekt ist als Server Applikation (mit ner Swing Gui) ausgelegt und größtenteils mit Enterprise Java Beans und anderen Techniken gebaut in denen ich nicht allzuviel Erfahrung habe =)
Jetzt ist die Frage, wie testet man so eine Applikation bzw. in welcher Art und Weise ist es sinnvoll so eine Applikation automatisiert zu testen? Erster Anlaufpunkt soll sein den Datenimport automatisiert zu testen, später sollen auch automatische GUI Tests gebaut werden. Allerdings hab ich keine wirkliche Idee wie ich da rangehen sollte.
Es gibt schon ein paar Testklassen, die aus meiner Perspektive nicht vollständig und relativ zusammenhangslos aufgebaut und auch schon einige Jahre alt sind. Derjenige der die früher gebaut hat ist natürlich nicht mehr verfügbar. So wie ich das bisher rauslesen konnte, hat er im Endeffekt die Testcases so gebaut dass er ganze Prozesse (z.B. Datenimport) halt anstößt und nur die Exceptions abfängt, treten keine auf war der Test erfolgreich. Wäre an der Stelle auch erstmal mein erster Ansatz, aber ich denke dass es da doch noch bessere Möglichkeiten geben muss sowas zu testen.
Des weiteren bin ich auch nicht lange bei dem Kunden und soll quasi die Vorarbeit leisten und die Grundlage für eine automatisierte Testumgebung legen.
Ich will hier an der Stelle natürlich keine konkrete Hilfe mit der Anwendung selber, sondern würde gern von euren Erfahrungen lernen wie man so eine Aufgabe angehen kann, auf was man vielleicht achten sollte und was an der Stelle sinnvoll ist. Ich hoffe dass es hier ein paar Leute gibt die mir da ein paar Tipps geben könnten.
Meine erste Idee war, dass ich so ne Art zentrale Test-Applikation baue. Wir haben in der letzten Zeit schon ein paar kleinere Test-Tools gebaut die ich schon in dieser Applikation zusammengefasst habe. Nun war meine Idee so ne Art Framework zu bauen mit dem man dann modular die einzelnen Testsuites und TestCases in diese Applikation nach und nach einbauen kann. Allerdings scheint es nicht sehr verbreitet zu sein und auch keine wirklichen Möglichkeiten geben JUnit Tests über ne eigene GUI laufen zu lassen.
Also, was meint ihr? Wie würdet ihr so eine Aufgabe angehen?
Ich hoffe ihr könnt mir helfen.
Danke im voraus.
Grüße
ich habe ein kleines Problemchen. Ich bin für ne Weile bei nem Kunden der ne ziemlich große Java Applikation hat und automatisierte Tests einführen will.
Das Problem ist, eigentlich haben wir alle keine Ahnung davon wie man das so macht
Ich hab mich schon in der Vergangenheit immer mal ein wenig mit JUnit beschäftigt und ein wenig rumprobiert, von daher weiß ich zumindest grundsätzlich wie JUnit funktioniert.
Allerdings ist mein Eindruck von meinen bisherigen Erfahrungen her der dass ich mit JUnit ganz gut einfache Sachen testen kann, also Zahlen oder booleans als Rückgabewert habe und diese Werte entsprechend mit den assert Methoden gegen andere Werte testen kann.
Das Projekt hingegen ist eher darauf ausgelegt Werte per XML und anderen Formaten entgegenzunehmen, damit ein wenig zu arbeiten und die in die Datenbank zu schreiben. Die meisten Methoden sind dabei Void Methoden. Das Projekt ist als Server Applikation (mit ner Swing Gui) ausgelegt und größtenteils mit Enterprise Java Beans und anderen Techniken gebaut in denen ich nicht allzuviel Erfahrung habe =)
Jetzt ist die Frage, wie testet man so eine Applikation bzw. in welcher Art und Weise ist es sinnvoll so eine Applikation automatisiert zu testen? Erster Anlaufpunkt soll sein den Datenimport automatisiert zu testen, später sollen auch automatische GUI Tests gebaut werden. Allerdings hab ich keine wirkliche Idee wie ich da rangehen sollte.
Es gibt schon ein paar Testklassen, die aus meiner Perspektive nicht vollständig und relativ zusammenhangslos aufgebaut und auch schon einige Jahre alt sind. Derjenige der die früher gebaut hat ist natürlich nicht mehr verfügbar. So wie ich das bisher rauslesen konnte, hat er im Endeffekt die Testcases so gebaut dass er ganze Prozesse (z.B. Datenimport) halt anstößt und nur die Exceptions abfängt, treten keine auf war der Test erfolgreich. Wäre an der Stelle auch erstmal mein erster Ansatz, aber ich denke dass es da doch noch bessere Möglichkeiten geben muss sowas zu testen.
Des weiteren bin ich auch nicht lange bei dem Kunden und soll quasi die Vorarbeit leisten und die Grundlage für eine automatisierte Testumgebung legen.
Ich will hier an der Stelle natürlich keine konkrete Hilfe mit der Anwendung selber, sondern würde gern von euren Erfahrungen lernen wie man so eine Aufgabe angehen kann, auf was man vielleicht achten sollte und was an der Stelle sinnvoll ist. Ich hoffe dass es hier ein paar Leute gibt die mir da ein paar Tipps geben könnten.
Meine erste Idee war, dass ich so ne Art zentrale Test-Applikation baue. Wir haben in der letzten Zeit schon ein paar kleinere Test-Tools gebaut die ich schon in dieser Applikation zusammengefasst habe. Nun war meine Idee so ne Art Framework zu bauen mit dem man dann modular die einzelnen Testsuites und TestCases in diese Applikation nach und nach einbauen kann. Allerdings scheint es nicht sehr verbreitet zu sein und auch keine wirklichen Möglichkeiten geben JUnit Tests über ne eigene GUI laufen zu lassen.
Also, was meint ihr? Wie würdet ihr so eine Aufgabe angehen?
Ich hoffe ihr könnt mir helfen.
Danke im voraus.
Grüße