소프트웨어 개발 단계에서 단위 테스트(Unit Test)가 완료된 후,
각 모듈을 결합하여 오류를 찾는 과정을 통합 테스트(Integration Testing)라고 합니다.
📌 목적:
📌 테스트 방식:
📌 주요 오류 유형:
✔️ 인터페이스 오류 → 모듈 간 데이터 전달 문제
✔️ 데이터 흐름 오류 → 입력값과 출력값의 불일치
✔️ 의존성 오류 → 한 모듈이 다른 모듈의 실행에 영향을 주는 문제
📌 ① 비점진적 통합(Big Bang 방식)
📌 ② 점진적 통합(Incremental 방식)
📌 ① 하향식 통합 테스트(Top-Down Integration Testing)
📌 ② 상향식 통합 테스트(Bottom-Up Integration Testing)
📌 ③ 혼합식(샌드위치) 통합 테스트(Hybrid Integration Testing)
✔️ Step 1 → 개별 모듈을 통합할 방법 결정 (하향식, 상향식, 혼합식)
✔️ Step 2 → Stub(스텁) 또는 Driver(드라이버) 사용 여부 결정
✔️ Step 3 → 테스트 케이스 설계 및 실행
✔️ Step 4 → 오류 발생 시 수정 및 재테스트(회귀 테스트)
📌 Stub(스텁)
📌 Driver(드라이버)
📌 회귀 테스트(Regression Testing)
1️⃣ 통합 테스트는 모듈 간 상호작용을 검증하는 과정
2️⃣ 비점진적(빅뱅 방식) vs 점진적(상향식, 하향식, 혼합식) 방식 존재
3️⃣ 하향식 통합 → Stub(스텁) 사용
4️⃣ 상향식 통합 → Driver(드라이버) 사용
5️⃣ 샌드위치(혼합식) → 상향 & 하향 결합, 대규모 시스템에 적합
6️⃣ 회귀 테스트(Regression Test)는 오류 수정 후 필수 수행
📌 시험 대비
❓ 1. 하향식 통합 테스트에서 사용되는 것은?
👉 Stub(스텁)
❓ 2. 통합 테스트에서 최적의 테스트 방식을 지원하는 것은?
👉 혼합식(샌드위치) 테스트
❓ 3. 모듈 간의 결합을 진행할 때 가장 오류 발견이 쉬운 방식은?
👉 점진적 통합 테스트 (특히 하향식/상향식 방식)
❓ 4. 코드 수정 후 기존 기능의 정상 동작을 확인하는 테스트는?
👉 회귀 테스트(Regression Testing)
이제 통합 테스트의 개념과 특징을 확실히 정리할 수 있겠죠? 🚀
시험 대비를 위해 개념을 정확히 숙지하고, 기출문제 유형을 연습하면 도움이 될 거예요! 💡