Mock Objekt
R 2.0.0
Beispiele für die Nutzung von Mock Objekten
Mock Objekte lassen sich verwenden, wenn:
-
das gewünschte Objekt noch nicht zur Verfügung steht,
-
das reale Objekt nicht durch einen Test beschädigt werden soll – z.B. wenn Daten dauerhaft gelöscht werden,
-
ein Verhalten nachgestellt werden soll, das nur schwierig auszulösen ist,
-
die reale Lösung zu komplex und langsam für einen Test ist – z.B. eine vollständige Datenbank, die vor jedem Test initialisiert werden müsste.
Verschiedene Arten von Mock-Objekten
-
Ein „Dummy“ ist ein Objekt, das im Code weitergegeben, aber nicht verwendet wird. Es wird genutzt, um Parameter mit Werten zu befüllen.
-
Ein „Fake“ ist ein teilweise implementiertes Objekt, das nur eingeschränkt einsatzfähig ist. Beispiel: eine Datenbank die Daten nicht persistent speichert.
-
Ein „Stub“ ist ein Objekt, das unabhängig von einer Eingabe / Input immer dieselbe Antwort / Output liefert.
-
Ein „Spy“ ist ein Objekt, das Aufrufe und Werte protokolliert und gegebenenfalls ausliefert.
-
Ein „Shim“ bzw. ein „Shiv“ ist ein Objekt, das Anfragen an eine Schnittstelle abfängt und selbst antwortet.
Praktischer Einsatz von Mock Objekten
Der praktische Einsatz von Mock-Objekten muss immer von folgenden Voraussetzungen getragen sein:
-
ein Mock-Objekt muss mit seinem Original-Objekt übereinstimmen und keine weiteren Aktivitäten bzw. Abhängigkeiten von einem weiteren Original-Objekt haben
-
das Mock-Objekt wird nur in der Testphase eingesetzt und muss anschließend auf einfachem Wege wieder neutralisiert werden können.
Quellen
-
Testen in Scrum-Projekten, 1-Auflage; T.Linz; 2013; S.76-77
-
t2informatik GmbH, Was ist ein Mock Objekt?, abgerufen am 12.02.2024