최종 프로젝트인 만큼 기능구현이 된 코드들은 테스트코드를 작성해 보는게 좋을 것 같다는 팀원들의 의견이 있어서 공부를 해봤습니다.
이름 그대로 테스트코드는 우리가 작성한 코드들이 기능구현이 잘 됐는지 확인하기 위해 임의의 값을 넣어보고, 실제 출력값이랑 일치하는지 확인하는 작업이라고 할 수 있습니다.
사용 예시를 간단히 살펴보면, 아래와 같습니다.
@Test
@DisplayName("프로필 조회 테스트")
void getProfileTest() {
// given - 필요한 변수 생성
// when - 테스트할 메서드를 실제 동작
// then - 결과 제대로 나왔는지 확인
}
먼저 @Test 어노테이션을 달아주고, @DisplayName() 어노테이션으로 이 코드가 어떤 테스트를 진행하는 코드인지 명시해줍니다. 그 뒤 실제 구현한 코드명+Test로 이름을 적은 뒤 {}에 조건을 부여해주면 완성입니다.
// given 에는 이 테스트에 필요한 변수들을 생성해줍니다.
// when 에는 테스트를 진행 할 메서드가 실제 동작하는지 확인합니다.
// then 에는 결과 값이 나왔는지 비교&확인 하는 코드를 작성합니다.
위 과정을 통해 getProfile 메서드를 테스트해 볼 수 있습니다. 만약 결과값이 일치한다면 위 코드는 기능구현이 잘 됐다고 판단해서 협업중일 경우에는 PR올려서 메인에 머지해도 괜찮습니다. 하지만 예상 값이랑 실제 값이 일치하지 않는다면 기능구현 부분에 문제가 있는 코드이므로 수정한 후 다시 PR올려야겠죠?
이상으로 테스트코드를 작성하는 이유와 간단한 사용 예시를 알아봤습니다. 개발자로 취업하는 그날까지 화이팅 해보겠습니다!