9.21. Wir brauchen viele unterschiedliche, aber ähnliche objekte

Das Problem, das wir im Augenblick haben, sind Sequenzen wie diese:

Bestellungs- verarbeitung

Test DB- Werkzeuge

bestVerarbeiten(...)

getGK(...)

Eine bestimmte GK mit einem bestimmten Betrag liefern.

Hier ist unser Problem: Für die unterschiedlichen Szenarien benötigen wir jeweils andere Testklassen, die die entsprechende Art von Gutschein liefern.

gkSpeichern(...)

bestSpeichern(...)

Nichts tun ...

bestVerarbeiten(...)

Die GK scheinspeichern.

Das ist alles nur Schein, aber da die Bestellungsverarbeitung diese Methoden aufrufen muss, benötigen wir eine Implementierung von DBAccessor.

TestGuterDBAccessor

+ getGK(gcId : int) :Gutschein
+ gkSpeichern(card : Gutschein) :void

TestSchlechterDBAccessor ...

Get Softwareentwicklung von Kopf bis Fuß now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.