Durante l'addestramento TDD basato su un caso di software medico stiamo implementando la seguente storia: "Quando l'utente preme il pulsante Salva, il sistema dovrebbe aggiungere paziente, aggiungere dispositivo e aggiungere record di dati del dispositivo".
L'implementazione finale sarà simile a questa:
if (_importDialog.Show() == ImportDialogResult.SaveButtonIsPressed)
{
AddPatient();
AddDevice();
AddDeviceDataRecords();
}
Abbiamo due modi per implementarlo:
- Tre test in cui ciascuno verifica un metodo (AddPatient, AddDevice, AddDeviceDataRecords) è stato chiamato
- È stato chiamato un test che verifica tutti e tre i metodi
Nel primo caso se succede qualcosa di sbagliato se la condizione della clausola, tutti e tre i test falliranno. Ma nel secondo caso se il test fallisce, non siamo sicuri di cosa sia esattamente sbagliato. In che modo preferiresti.