JUnit Return int Wert
Mein Junit-test soll überprüfen, dass die Anzahl zurückgegeben wird, ist die gleiche wie die Liste Größe
wenn mein test war wie folgt würde diese codiert werden, richtig, ich fühle es nicht, weil ich die letzten 2 Zeilen sind immer wahr zu sein?
public void testGetTotalPilots() {
ArrayList<Pilot> list = new ArrayList<Pilot>();
int size = list.size();
assert size == list.size();
}
- Sie verwenden das falsche geltend machen - das ist der eingebaute Java-Schlüsselwort, nicht die Junit-Assert-Klasse. Sollte Geltend machen.Gleich(Größe, Liste.size());
- Oder TestNG verwenden anstelle von JUnit, wo Sie mit
assert
gültig ist
Du musst angemeldet sein, um einen Kommentar abzugeben.
Könnte man testen, z.B., ob die Liste leer ist (size == 0), wenn die Liste erstellt wurde:
Und/oder fügen Sie einige Einträge in der Liste und prüfen, ob die Liste ist der Größe entsprechend gesetzt:
Edit:
Wenn unit-Tests eine Liste (
ArrayList
), sollten Sie überlegen, wie die Liste verwendet werden kann (test-Szenarien). Zum Beispiel,assert
ist eine java-Sprache-Funktion nicht verwendet werden, die in tests. Es ist bewertet mit Laufzeit-option-ea
nur! Ohne diese Möglichkeit, Ihre code-tests nichts! Bitte nutzen Sie Methoden desjunit.framework.Assert
wieassertEquals()
.Auf der anderen Seite, ich bin mir nicht sicher, was dein test sollte test. Liste.size() ist immer Liste.Größe(). Sollten Sie behaupten eine Reihe. Auch Sie brauchen nicht zu testen, ArrayList - es funktioniert. Wo ist dein code zum testen?
Sicherlich Ihren test tun muss, etwas, ersten, dh trigger den code, den Sie testen wollen, zum füllen der ArrayList von Pilot-Objekte? So würdest du dann den Quelltext von test wie folgt:
... sonst bist du einfach nicht alles testen.
Ich würde nicht sagen, dass Sie den test korrekt ist.
Den obigen änderungen würden sicherstellen, dass Ihr test ist immer null, da erscheint das erwartete Ergebnis. Wenn es nicht null ist, wird der test fehlschlagen.
Was Sie testen hier ist ArrayList. Warum? Ich glaube nicht, dass es ist besonders nützlich, um Ihre Zeit zu verbringen prüfen grundlegende Funktionalität von Klassen, die Schiff mit Java und sind in breiten Einsatz.
Blick auf den Namen des Tests dieser test sollte lieber die Liste von woanders und dann testen Annahmen über die Liste der Piloten. Etwas entlang der Linien von
Oder, wie ich schon in deinem anderen post, die dies tun;
Liste der Piloten = pilotDao.getAll();
die Piloten.add(new Pilot)
und dann prüfen, ob die richtige Reaktion auf diese geschieht, d.h. eine Ausnahme wird geworfen wenn Sie nicht wollen, Menschen zu ändern, die Liste oder einen nachfolgenden Aufruf
pilotDao.getAll();
gibt eine Liste der Größe 1.