테스트 코드 전체 구조
테스트 코드 커버리지
단위 테스트(= 유닛 테스트)
[중요] 유닛 테스트는 특정 함수에 대해 동일한 입력값을 줄 때, 동일한 출력을 얻는지를 검증하는 것입니다.
[중요] 전체 코드 중 가장 작은 부분을 테스트 하는 것이고, 만약 테스트에 네트워크, DB 같은 외부 리소스가 포함된다면, Unit Test가 아닙니다.
[주의] 만약 나의 product 코드가 Unit test를 만들기 어렵게 구성되어있다면, 한 함수에 너무 많은 코드가 구현되어있고, 책임이 있다는 뜻으로 해당 함수를 여러 함수들로 분리시키는 리팩토링이 필요하다는 의미로 해석될 수 있습니다.
[중요] 단위 테스트의 가장 중요한 속성은 다음 3가지 입니다.
[참고] 단위 테스트 코드 예시