🧬 테스트의 진화 과정
소프트웨어 품질 확보를 위한 테스트는 시대와 기술, 조직 성숙도에 따라 진화해왔다.
1️⃣ 초기 테스트: 혼합/직관적 테스트 (Level 1)
- 특징:
- 계획 없는 임시/우연적 테스트
- 개발자 중심
- 문서화 거의 없음
- 효과/한계:
2️⃣ 단계별 테스트 (Level 2)
- 특징:
- 단위 → 통합 → 시스템 → 인수 단계 구분
- 테스트 케이스 일부 존재
- QA 팀 초기 단계
- 효과:
- 결함 위치 파악 가능
- 반복 가능한 테스트 수행 가능
3️⃣ 검증 중심 테스트 (Level 3)
- 특징:
- 요구사항 기반 테스트 케이스 설계
- 테스트 프로세스 정의
- 결함 추적 시스템 사용
- 효과:
4️⃣ 품질 보증 중심 (Level 4)
- 특징:
- 테스트 계획, 절차, 리뷰, 정적 검증 체계화
- 위험 기반 테스트 적용
- QA 팀 조직적 성장
- 효과:
5️⃣ 예방/최적화 중심 (Level 5)
- 특징:
- 결함 예방 중심, 코드 리뷰·정적 분석 강화
- 자동화 테스트, CI/CD 연계
- 데이터 기반 품질 개선
- 효과:
- 빠른 릴리즈와 안정성 확보
- 지속적 품질 최적화
🔍 QA 관점 핵심
- 테스트는 단순 실행에서 예방과 예측 중심으로 진화
- 자동화, CI/CD, 데이터 기반 접근은 QA의 효율과 가치를 극대화
- 레벨이 높을수록 QA 역할이 단순 결함 발견을 넘어 조직적 품질 확보로 확대
핵심 메시지: 테스트의 목표는 항상 “품질 확보와 위험 최소화”
방법론과 도구, 프로세스는 시대와 조직 성숙도에 따라 진화하고 있다.