유닛 테스트(Unit Test)
테스트가 가능한 가장 작은 단위(함수 등)를 테스트하는 것
통합 테스트(Integration Test)
유닛 테스트보다 큰 동작이 서로 다른 동작과 의도대로 잘 상호작용하는지를 테스트하는 것(데이터베이스와 관련이 있다.)
그러면 왜 이런 테스트를 해야 할까?
요구사항을 검증하는 테스트 케이스를 먼저 작성하고 그 후에 만든 테스트 케이스를 통과하기 위한 코드를 작성하는 법이다.
1. 실패하는 테스트 코드 작성
2. 테스트 코드를 통과하는 실제 코드 작성
3. 리팩터링
위 순서를 반복하면서 진행한다.
디버깅의 용이
유지보수의 용이
모듈화
생산성의 저하
적응의 어려움