TDD와 단위 테스트의 간단한 차이부터 생각해보자.
TDD는 테스트가 주도하는 개발을 의미한다. 테스트 코드를 먼저 작성하는 것 부터 시작한다.
이번 포스팅의 메인이라 할 수 있다.
단위 테스트는 TDD의 첫 번째 단계인 기능 단위의 테스트 코드를 작성하는 것을 의미한다.
TDD와는 다르게, 레드 그린 사이클을 따라할 필요가 없다.
5번의 경우 아주 중요한 장점이다. 작은 프로젝트라면 단순 출력데이터로 결과를 눈으로 검증하는것이 큰 문제로 작용하지 않는다. 하지만, 프로젝트의 규모가 거대해진다면, 단순히 서버 On / Off 만으로 엄청난 시간을 들이게될 수 있다. 테스트 코드의 경우 자동으로 결과를 검증해주기 때문에 더이상 수동검증은 필요가 없어진다.
6번의 경우, B라는 기능이 추가되어 테스트하는데, 기존에 잘되던 A의 기능에 문제가 생긴것이 발견되는 경우가 있다. 규모가 큰 프로젝트에서 빈번하게 발생하는 문제점인데, 이것을 방지하기 위해 프로젝트 내 모든 기능을 테스트 할 순 없다. 따라서 새로운 기능이 추가될 떄, 기존 기능이 잘 작동되는 것을 보장해주는 것이 테스트 코드다.
jojoldu 개발자는 테스트 코드를 서비스 기업에서는 특히나 강조되고 있어 100% 익혀야 할 기술이자 습관 이라 얘기했다.
@WebMvcTest에서 CustomOAuth2UserService을 찾을 수 없음 (0) | 2020.06.29 |
---|---|
Spring-security 모듈 추가 후 테스트 에러 해결 (0) | 2020.06.29 |
Spring_boot를 테스트하기 위한 어노테이션 및 메소드 (0) | 2020.06.29 |
신규 모듈 추가시 전체 테스트 에러가 발생한다. (0) | 2020.06.29 |
Spring-boot HTML Test (0) | 2020.06.24 |