테스트 범위
일반적인 웹 어플리케이션의 테스트 범위에 따른 테스트 종류

기능(Functional) 테스트 = ECE(End to end) 테스트
- 사용자 입장에서 시스템이 제공하는 기능 올바르게 동작하는지 확인
- 시스템 구동하고 사용하는데 필요한 모든 구성 요소 필요
- ex. 회원 가입 기능 → 웹 서버, 데이터베이스, 브라우저
- ex. 문자 발송 → 외부 문자 발송 서비스
- QA 조직에서 수행하는 테스트
통합(Integration) 테스트
- 시스템의 각 구성 요소 올바르게 연동되는지 확인
- 소프트웨어 코드 직접 확인 ↔ 기능: 사용자 입장에서 테스트
- 통합: 서버의 회원 가입 코드 직접 테스트
(ex. 스프링 프레임워크 or 마이바티스 설정 올바른지, SQL 쿼리 맞는지, DB 트랜잭션 잘 동작하는지)
- 기능: 앱 ~> 가입 기능 테스트
- 대상: 프레임워크, 라이브러리, 데이터베이스, 구현한 코드
단위(Unit) 테스트
- 개별 코드 or 컴포넌트 기대한대로 동작하는지 확인
- 한 클래스 or 메서드 같은 작은 범위 테스트
- 일부 의존 대상 → 스텁 or 모의 객체 등 이용해서 대역으로 대체