Unittesting von Komponenten mit DB-Zugriffen (SQLAlchemy)

Installation und Anwendung von Datenbankschnittstellen wie SQLite, PostgreSQL, MariaDB/MySQL, der DB-API 2.0 und sonstigen Datenbanksystemen.
Antworten
Pekh
User
Beiträge: 482
Registriert: Donnerstag 22. Mai 2008, 09:09

Hallo,

ich versuche mich gerade ein wenig an TDD, tue mich aber noch ein wenig schwer damit, Unittests für Komponenten zu schreiben, die auf eine Datenbank zugreifen. An einer Stelle greife ich auf Sqlite über die DBApi2 zu, dort habe ich mir zwei Klassen geschrieben, die die Verbindung und einen Cursor simulieren, und die ich der zu testenden Methode unterjubele. Das funktioniert so weit ganz gut. Für die richtig große Datenbank will ich SQLAlchemy verwenden, habe aber noch keine Idee, wie ich die Schnittstellen meiner Methoden so gestalten kann, daß sich das ganze mit einem simulierten DB-Zugriff testen lässt.

Welche Ansätze verfolgt ihr in solchen Situationen? Da DB-Zugriffe ja ein integraler Bestandteil der meisten Anwendungen sind, kann ich mir nicht vorstellen, daß die einfach ungetestet bleiben.

Schönen Dank schonmal

Peer
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Hallo Pekh, willkommen im Forum,

Ich kann dein Problem verstehen - ich habe vor einigen Tagen das gleiche Problem gehabt, nur mit Netzwerk-IO. Oftmals ist es da hilfreich, zu gucken wie das Projekt selbst die Tests macht, etwa hier.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Antworten