의료 소프트웨어 사례를 기반으로 한 TDD 교육 과정에서 "사용자가 저장 버튼을 누르면 시스템이 환자를 추가하고 장치를 추가하며 장치 데이터 레코드를 추가해야합니다"라는 스토리를 구현합니다.
최종 구현은 다음과 같습니다.
if (_importDialog.Show() == ImportDialogResult.SaveButtonIsPressed)
{
AddPatient();
AddDevice();
AddDeviceDataRecords();
}
이를 구현하는 두 가지 방법이 있습니다.
- 각각 하나의 메소드 (AddPatient, AddDevice, AddDeviceDataRecords)가 호출되었는지 검증하는 세 가지 테스트가 호출되었습니다.
- 세 가지 방법을 모두 검증하는 하나의 테스트가 호출되었습니다.
첫 번째 경우 if 절 조건에 문제가 발생하면 세 가지 테스트가 모두 실패합니다. 그러나 두 번째 경우 테스트에 실패하면 정확히 무엇이 잘못되었는지 확실하지 않습니다. 어떤 방법을 선호하십니까?