오늘부터 단위테스트가 시작되었다.
원래는 개발 -> 단위테스트 -> 통합테스트 이렇게 순서대로 진행하는것이 기본이라고 하던데
이번 프로젝트는 시간상 불가능 할 것으로 보인다는 팀장님들의 지시로
개발을 진행하면서 단위테스트까지 같이 진행하게 되었다.
단위 테스트는 소프트웨어의 가장 작은 단위(함수, 메서드, 클래스 등)를 독립적으로 테스트하는 과정
즉, 코드의 개별 구성 요소가 올바르게 동작하는지 검증하는 테스트 기법
단위 테스트는 테스트 우형에 따라 논리, 통합 등으로 나눌 수 있다.
한 개의 메서드(함수)에 집중하여 테스트하는 방법
→ Mock이나 Stub을 사용해 외부 요소를 차단하고, 오직 특정 메서드가 정상 작동하는지 검증
실제 운영 환경(또는 그 일부)에서 컴포넌트 간의 연동을 테스트하는 방법
→ 예를 들어, 데이터베이스(DB), API, 파일 시스템 등의 실제 연결을 포함한 테스트
즉, 단위테스트는 "작은 부품"을, 통합 단위 테스트는 "전체 시스템"을 검증하는 과정!

어떤 함수를 테스트할 것인지 결정
함수의 입력값과 기대 결과를 설정
올바른 입력 → 예상한 결과 반환 확인
잘못된 입력 → 적절한 오류 발생 여부 확인
unittest, pytest 등의 프레임워크 사용
결론,
우리는 기존에 있는 기능들을 하나하나 체크하기위해 일부러 오류를 내어
잘못된 결과와, 올바른 결과 두가지를 모두다 테스트 했다.
따로 자동화된 테스트 코드를 작성하지는 않고, 우리가 사용하고있던 코드에서 빠르게 진행하였다.
처음해보는 단위테스트인지라..
주단위로 개발을 하고, 개발된 내용을 테스트해서 버그가 날 확률을 예측해서 이것저것 테스트를
진행해본다는게 쉽지가 않았다..
다음주도.. 파이팅..