Testbibliothek für das Mandanten- und Belegobjekt

web2perform

Mitglied
Hallo zusammen,

unser Team hat eine Bibliothek entwickelt, die es möglich macht, z. B. das Mandantenobjekt in Komponententests zu verwenden. Das Belegobjekt wurde hier noch nicht vollständig abgebildet und ein paar Properties des Mandantenobjekts fehlen auch noch.
Wir sind sicher nicht die einzigen, die Tests (z. B. mit xUnit) schreiben, es gibt sicher auch andere ISVs oder Fachhändler, die das machen oder machen möchten. Wie ist das bei euch, implementiert ihr in eure Projekte automatische Tests?

Mit der Bibliothek wird folgendes möglich:
- Mocking des Mandantenobjekts
- Mocking der Session (vor Anmeldung des Mandanten)
- Testen der Funktionen, die das Mandantenobjekt nutzen (Asserting..)

Uns interessiert vor allem, wie hoch das Interesse der Softwareentwickler an einer solchen Bibliothek ist.

Freundliche Grüße
Marcel von web2perform
 
Hallo Marcel,

auf jeden Fall ein guter und spannender Ansatz. Ich habe es für mich ähnlich gelöst und reichere mit jedem weiteren Testszenario die Eigenschaften und Methoden an. Um Datenzugriffe zu simulieren, nutze ich eine SQLite-Datenbank.
Wie löst du die Datenbankanbindung in deiner Bibliothek?

Viele Grüße
Thomas
 
Hallo Marcel,

auf jeden Fall ein guter und spannender Ansatz. Ich habe es für mich ähnlich gelöst und reichere mit jedem weiteren Testszenario die Eigenschaften und Methoden an. Um Datenzugriffe zu simulieren, nutze ich eine SQLite-Datenbank.
Wie löst du die Datenbankanbindung in deiner Bibliothek?

Viele Grüße
Thomas
Hallo Thomas,

die Datenbankanbindung wird in unserer Bibliothek gar nicht verwendet. Wir prüfen mit unseren Tests und mit Hilfe der Bibliothek nur die Funktionalität der Funktionen, nicht aber die Datenbankverbindung oder die Korrektheit der SQL-Statements.

Was damit möglich ist, ist z. B. die Prüfung, ob in einer Funktion das - laut Test vorgegebene - korrekte SQL-Statement mit den korrekten Parametern ausgeführt wird. Dafür muss natürlich sichergestellt sein, dass das Statement im Testprojekt korrekt ist.

Code-Anpassungen, die die Funktionsweise der bestehenden SQL-Statements zerstören, können damit super leicht erkannt werden.

Viele Grüße
Marcel
 
Zurück
Oben