Testing Tipps

Hallo,

ich habe eine Methode checkFiles, die ich mit UnitTest testen möchte. Leider bin ich bei Test noch nicht ganz so erfahren. Ich suche hier auch keine Codeansätze, wie man dies in Java umsetzt, da ich gerade mit Powershell/Pester unterwegs bin.
Ich brauche nur sinnvolle Testfälle und ich weiß, das die Java Community sehr aktiv ist. Deswegen frage ich hier.

Also checkFiles ist dafür da, das nicht zuviele LogFiles erzeugt werden.
Diese Methode achtet immer darauf, dass maximal 5 Files drin sind. Wird eine sechste erzeugt, wird die älteste gelöscht.
Test sollten unabhängig und in sich abgeschlossen sein, wie eben alle UnitTest auch.
Ich könnte jetzt 5 Files erzeugen und unabhängig davon wieviele lokal bereits vorhanden sind kann ich den Test schreiben "Maximal 5 Files im Ordner". Jetzt könnte ich auch noch testen, wenn ich z.B. zwei Files erzeuge, das "1 bis 5 File im Ordner sind". Und als letztes kann ich ich prüfen, wenn ich eine Datei erzeuge, dass "Nicht 0 Files sich im Ordner befinden".

Das wären 3 Test, wobei zwei Tests recht ähnlich sind. Und meiner Meinung nach müsste ich noch irgendwas testen können.

Wäre über jeden weiteren Vorschlag sehr dankbar. Vorallem was unabhängige Tests angeht. Bin mir nicht sicher, ob meine Test, in den Aspekten gut sind.
 
Diese Methode achtet immer darauf, dass maximal 5 Files drin sind. Wird eine sechste erzeugt, wird die älteste gelöscht.
Soll die Methode selbst die Sechste Datei löschen? Oder macht die noch mehr?

Test sollten unabhängig und in sich abgeschlossen sein, wie eben alle UnitTest auch.
Dafür jeden Testdurchlauf in einem eigenen Ordner laufen lassen. Entweder mit einem "virtuellen Filesystem" oder mit einem temporären Order für jeden Test.

Ich könnte jetzt 5 Files erzeugen und unabhängig davon wieviele lokal bereits vorhanden sind kann ich den Test schreiben "Maximal 5 Files im Ordner". Jetzt könnte ich auch noch testen, wenn ich z.B. zwei Files erzeuge, das "1 bis 5 File im Ordner sind". Und als letztes kann ich ich prüfen, wenn ich eine Datei erzeuge, dass "Nicht 0 Files sich im Ordner befinden".
Spontan (jeweils als vor Methodenaufruf -> nach Methodenaufruf):

* 0 Dateien -> nichts passiert, weiterhin 0 Dateien
* 5 Dateien -> nichts passiert, weiterhin 5 Dateien
* 6 Dateien, aufsteigendes Datum -> älteste wird gelöscht, Restliche bleiben gleich
* 6 Dateien, alle gleiches Dateum -> spezifizieren was passieren soll und testen
* > 6 Dateien, Rest identisch zu 6.



Deine genannten Testfälle decken alle das gleiche ab ("Dateien vorhanden, aber nicht zu viele"), und das was du jeweils in Anführungszeichen geschrieben hast, ist für mich einfach nur eine Beschreibung des Testfalls?
 
Zuletzt bearbeitet:
Super Idee mit den verschiedenen Ordnern. An das hätte ich jetzt nicht gedacht.
Und den letzten Fall mit dem gleichem Datum brauche ich nicht testen. Denn die Dateien merken sich auch die Erstellzeit und das auf Millisekunden. Ich könnte den Test garnicht schreiben, da ich in einer Millisekunde keine 6 Dateien erzeugen kann.
 
Denn die Dateien merken sich auch die Erstellzeit und das auf Millisekunden. Ich könnte den Test garnicht schreiben, da ich in einer Millisekunde keine 6 Dateien erzeugen kann.
Natürlich kann man auch mehrere Dateien in einer Millisekunde erstellen, und den Timestamp kann man natürlich auch im Nachhinein anpassen ;)


Falls du damit meinst, dass der Fall sowieso nie eintreten wird: das sind die Dinge, die Software kaputt gehen lassen ;)
 
Passende Stellenanzeigen aus deiner Region:

Neue Themen

Oben