Java Eclipse: Programm "testen"

xXxOrcaxXx

Lt. Junior Grade
Registriert
Nov. 2013
Beiträge
362
Hallo,
ich habe letztens angefangen ein eigenes Projekt zu programmieren, leider habe ich noch nicht so viel Ahnung von der Programmierung, deshalb hier meine Frage:
Ich habe ein Projekt erstellt, Packages und Klassen und auch schon ein paar Funktionen geschrieben.
Ich würde diese Funktionen nun gerne "in freier Wildbahn" testen, also am besten das Projekt durch den Parser jagen und selbst die Funktionen aufrufen und das Ergebnis überprüfen. Ich möchte nicht die klassischen JUnit Tests benutzen, schon allein, weil manche meiner Funktionen auf ThreadLocalRandom zurückgreifen und ich das Ergebniss deshalb schwer abschätzen kann.

Kann mich jemand aufklären, wie ich das hinbekomme?
 
Zur Not hau dir eine fürs Projekt redundante Main in jede Klasse & gib dort aus was auch immer du ausgeben magst von der Funktion
 
Also ein Haufen von System.out Befehlen? Ich habe schon eine Testklasse geschrieben, die auch eine main Methode besitzt. Allerdings findet die Eclipse nicht wenn ich "Run As>Run Configurations...>Main Class:" nutze.
 
Testen muss automatisiert sein, sonst ist das auf Dauer zu aufwändig und fehlerträchtig. Den Zufallszahlengenerator fürs Testen entweder ersetzen oder mocken. Oder sind die Ergebnisse nicht deterministisch?
 
Naja, das Problem ist nur, dass wenn ich die raandomizer ersetze, ich nicht mehr überprüfen kann, ob sich die Ergebnisse im Rahmen des erwarteten Bereich bewegen. Außerdem tun manche Klassen 30+ variablen halten und verändern, was es sehr nervig macht für diese Tests zu schreiben. Am wichtigsten sind für mich sowieso die compiler fehler oder ewentuelle out of bounds fehler.
 
Warum sollte das nicht möglich sein? Du musst ja nicht für alle Tests den Randomizer ersetzen. Für Tests, die Boundaries checken sollten, bietet es sich an. Für andere Dinge eben nicht.

Du kannst natürlich auch die ganze Anwendung laufen lassen und das oder die Ergebnisse validieren. Nennt sich dann Integration-Test, aber die Vorgehensweise ist genau so. Normalerweise testet man sowohl einzelne Sachen, als auch die ganze Anwendung.
 
Zurück
Oben