Während der TDD-Schulung auf der Grundlage eines medizinischen Softwarefalls wird die folgende Story implementiert: "Wenn der Benutzer die Schaltfläche Speichern drückt, sollte das System einen Patienten hinzufügen, ein Gerät hinzufügen und Gerätedatensätze hinzufügen."
Die endgültige Implementierung sieht ungefähr so aus:
if (_importDialog.Show() == ImportDialogResult.SaveButtonIsPressed)
{
AddPatient();
AddDevice();
AddDeviceDataRecords();
}
Wir haben zwei Möglichkeiten, dies umzusetzen:
- Drei Tests, bei denen jeweils eine Methode überprüft wurde (AddPatient, AddDevice, AddDeviceDataRecords)
- Ein Test, der alle drei Methoden verifiziert, wurde aufgerufen
Im ersten Fall, wenn eine Bedingung nicht erfüllt ist, schlagen alle drei Tests fehl. Aber im zweiten Fall, wenn der Test fehlschlägt, sind wir uns nicht sicher, was genau falsch ist. Welchen Weg würdest du bevorzugen?