Pendant la formation TDD basée sur le cas d'un logiciel médical, nous mettons en œuvre l'histoire suivante: "Lorsque l'utilisateur appuie sur le bouton Enregistrer, le système doit ajouter un patient, ajouter un appareil et ajouter des enregistrements de données d'appareil".
L'implémentation finale ressemblera à ceci:
if (_importDialog.Show() == ImportDialogResult.SaveButtonIsPressed)
{
AddPatient();
AddDevice();
AddDeviceDataRecords();
}
Nous avons deux façons de le mettre en œuvre:
- Trois tests où chacun vérifie une méthode (AddPatient, AddDevice, AddDeviceDataRecords) a été appelé
- Un test qui vérifie que les trois méthodes ont été appelées
Dans le premier cas, si quelque chose ne va pas dans la condition de la clause if, les trois tests échoueront. Mais dans le second cas, si le test échoue, nous ne savons pas exactement ce qui ne va pas. Quelle manière préférez-vous.