sogis / gretl

Contains custom gradle tasks to use in gradle builds. The custom tasks extend gradle for use as a sql-centric (geo)data etl. gretl = gradle etl
MIT License
4 stars 3 forks source link

Homogenisierung Testcode #151

Closed edigonzales closed 4 months ago

edigonzales commented 10 months ago

Betrifft wohl in erster Linie die Db2Db- und SqlExecutor-Tests. Diese schreiben was in die DB oder lesen was aus der DB. Dazu gibt es auch einiges an Utils-Code. Einige davon sind klassiert als Unit-Tests (prüfen die Steps) andere als Integrationstests (prüfen die fertigen Tasks). Hier möchte ich eine gewisse Harmonisierung herbeiführen.

Zusätzlich, eher organisatorisch, den Code so dokumentieren, dass klar ist, was "Vorbereitung", "Ausführung" und "Prüfung" ist. Oder wie man das auch immer gruppieren will. Bissle inspiriert durch Spock und BDD.

Z.B. auch folgendes: Einige DB-Tests schreiben zuerst das SQL in eine Datei und führen dann die Datei aus resp. die Files dienen als Input. Andere verwenden vorhanden Dateien aus .../resources/data/....

Saela commented 6 months ago

@edigonzales Wenn ich dich richtig verstanden habe, geht es dir hier darum, dass wir uns die Unit-Tests und Integrationstests etwas genauer anschauen und Tests, die vereinheitlicht werden können, entsprechend anpassen. Also zum Beispiel die von dir erwähnten DB Tests sollte man aneinander angleichen, sodass sie zum Beispiel neu alle das Test-Sql aus einer vorhandenen Datei lesen (als Beispiel, das Sql könnten wir auch im Test definieren. Müsste man noch schauen). Zudem soll die Testausführung an das Arrange -> Act -> Assert Pattern angeglichen werden.

Habe ich das korrekt verstanden? Oder gibt es weitere Dinge, die nötig sind?

edigonzales commented 6 months ago

Ja.