분류
범위에 따라
- 단위(Unit) 테스트
- 통합(Integation) 테스트
- E2E(End to End) 테스트
- 기능(Functional) 테스트
- 시스템(System) 테스트
- UI(User Interface) 테스트
- 회귀(Regression) 테스트
- 성능(Performance) 테스트
1. 단위(Unit) 테스트
- 모듈(함수/클래스) 단위의 테스트
- 테스트할 부분의 코드를 다른 시스템으로부터 분리(isolate)시킨 채 테스트
- 작성 비용이 적게 들고 실행 속도가 빠름
- 실패했을 때 문제가 생긴 부분을 비교적 정확하게 파악할 수 있음
- 경우에 따라 한두개의 단위를 모아서 하나의 단위로 취급하기도 함
Sociable vs Solitary
- Sociable Tests : 의존성이 있는 다른 코드들과 함께 테스트
- Solitary Tests : 테스트 더블을 이용해 완벽하게 분리시킨 채 테스트
- 경우에 따라 적절한 방법을 사용
2. 통합 테스트