Nur ein FYI: Unit Testing ist nicht gleichbedeutend mit TDD. TDD ist ein Prozess, bei dem Unit Testing ein Element ist.
Wenn Sie Unit-Tests implementieren möchten, gibt es eine Reihe von Möglichkeiten:
Alle neuen Codes / Erweiterungen werden getestet
Auf diese Weise müssen Sie nicht alles durchlaufen und Unit-Tests durchführen, was bereits vorhanden ist, sodass der anfängliche Aufwand für die Implementierung von Unit-Tests viel geringer ist.
Testen Sie einzelne Daten
Das Testen von Objekten, die große Datenmengen enthalten können, kann zu vielen Randfällen und Lücken in der Testabdeckung führen. Betrachten Sie stattdessen die Option 0, 1, many. Testen Sie einen Stapel mit 0 Elementen, 1 Element und vielen Elementen. Testen Sie im Fall von 1 Element die verschiedenen Permutationen, in denen sich die Daten für dieses Element befinden können.
Testen Sie von dort aus die Kantenfälle (Obergrenzen für die Größe einzelner Elemente und die Anzahl der Elemente im Stapel). Wenn Sie die Tests regelmäßig ausführen und lange Testläufe haben (große Stapel?), Lassen die meisten Testläufer eine Kategorisierung zu, damit Sie diese Testfälle separat ausführen können (nächtlich?).
Das sollte Ihnen eine starke Basis geben.
Aktuelle Daten verwenden
Es ist keine schlechte Idee, 'aktuelle' zuvor verwendete Daten wie jetzt einzugeben. Ergänzen Sie es einfach mit wohlgeformten Testdaten, damit Sie bestimmte Fehlerstellen sofort erkennen. Wenn Sie die tatsächlichen Daten nicht verarbeiten können, können Sie die Ergebnisse des Batch-Prozesses überprüfen, einen Komponententest erstellen, um den Fehler zu replizieren, und dann mit nützlichen Regressionsfällen wieder in Rot / Grün / Refaktor wechseln.