[디딤돌 C++] 25. 캡슐화 최종 실습 – 테스트 코드 작성

학생) 테스트 코드는 버그를 빠르게 발견할 수 있게 작성하세요. 이를 위해 구현과 함께 혹은 먼저 작성하세요.

이제 시나리오를 보면서 테스트 코드를 작성하세요.

많은 곳에서 구현한 후에 테스트를 수행합니다. 그리고 테스트 코드도 테스트를 수행하기 바로 전에 작성하죠. 하지만 소프트웨어 테스트는 많은 신경을 써도 충분하지 않아 배포 후에 버그를 발견할 때도 많습니다.

소프트웨어 개발에서 잘못 작성한 것은 빨리 발견할수록 전체 비용을 줄어듭니다. 이러한 이유로 많은 연구에서 설계가 끝나면 구현 작업과 함께 시작할 것을 권하고 있습니다. 그리고 구현한 것을 빠르게 테스트를 할 수 있게 원하는 결과가 나왔는지 빠르게 판단할 수 있는 다양한 기법을 사용하고 있습니다.

여기에서는 테스트를 빠르게 판단할 수 있는 코드 작성에 관해서는 다루지 않습니다.

여러분께서 어떻게 하면 학생 클래스를 잘 정의하였는지 테스트 할 수 있는 코드를 작성한 후에 비교해 보세요. 여기에서 작성한 테스트 코드는 모든 것을 테스트 할 수 있게 작성하지 않았습니다. 그리고 빠르게 버그를 판단할 수 있게 작성한 것이 아니므로 보다 나은 테스트 방법에 관해 고민해 보세요.

먼저 테스트에서 학생 정보를 출력하여 상태를 확인할 수 있게 학생 정보를 출력하는 기능을 구현하세요.

학생의 주민번호가 순차적으로 부여하는지 확인하는 기능도 필요하겠죠.

 

이제 기능에 따라 학생 상태를 시나리오에 맞게 바뀌는지 확인하는 코드를 작성하세요. 여기에서는 간단하게 구현하였습니다. 모든 테스트를 할 수 있는 코드나 버그를 빠르게 확인할 수 있게 작성하려면 무엇을 변경하고 추가해야 할 지 생각해 보세요.

다음은 이제까지 작성한 전체 코드 내용입니다.

 

 


[C++ 무료 동영상 강의] 23. 캡슐화 최종 실습 – 멤버 필드, 24. 멤버 메서드, 25. 테스트 코드 작성