Wie schreibt man Unit Tests für Funktionen, die auf dynamischen Daten basieren?

Nehmen wir an, Sie haben eine Website, die eine Funktion zum Abrufen von Daten aus der Datenbank verwendet und das anzuzeigende / analysierte / etc ... -Ergebnis zurückgibt.

Wie können Sie einen Komponententest für diese Funktion schreiben, da die aus der Datenbank abgerufenen Daten dynamisch sind und sich möglicherweise jede Sekunde des Tages ändern?

Angenommen, die Funktion soll eine Reihe von Ergebnissen zurückgeben. Offensichtlich könnte ein Komponententest prüfen, ob ein Array zurückgegeben wird oder nicht. Aber was passiert, wenn der Inhalt des Arrays aufgrund einer falsch geschriebenen MySQL-Abfrage falsch ist? Die Größe des Arrays könnte Null sein oder der Inhalt des Arrays könnte falsch sein. Woher weiß der Unit Test, was richtig ist und was nicht? Wären Aufrufe der Datenbank aus dem Unit-Test selbst erforderlich, damit es etwas gibt, mit dem man sie vergleichen kann?

Wie schreibt man einen Unit Test für Funktionen, die auf dynamischen Daten basieren?

Antworten auf die Frage(6)

Ihre Antwort auf die Frage