[- Disclaimer -]
아래 내용은 정보보안 공부 목적으로 작성된 것이나, 이를 토대로 허가되지 않은 대상에 실습을 진행할 경우 해킹 시도로 간주하여 법적 처벌을 받을 수 있음을 알려 드립니다.
Integration Test (=통합 Test)
✦ Unit Test가 완료된 Module들을 결합해 완제품으로 만드는 과정에서 Test 수행
✧ Module 간 또는 통합된 Component 간 상호 작용 오류 검사
✦ 단위 Test 후 Module 통합 과정에서 발생되는 Error 및 결함 점검
✦ 비점진적 통합 방식
✧ 단계적 통합 절차 없이 Module들이 결합된 프로그램을 Test
✧ 소규모 S/W에 적합
✧ 단시간 내 Test 가능
✧ Ex) 빅뱅 Test
✦ 점진적 통합 방식
✧ Module 단위로 단계적 통합하며 Test
✧ Error 수정 용이, Interface와 연계된 Error를 완전히 Test할 가능성 높음
✧ Ex) Top Down Test, Bottom Up Test
Top Down Integration Test (=하향식 통합 Test)
✦ 상위 Module에서 하위 Module로 통합해가며 Test
✧ Test 초기에 사용자에게 시스템 구조 보여주기 가능
✧ 상위 Module에서 Test Case 사용 어려움
✦ 깊이 우선 통합법
✧ Ex) Tree 구조에서 세로로
✦ 넓이 우선 통합법
✧ Ex) Tree 구조에서 수평으로
Top Down Integration Test 과정
✦ 1) 실제 프로그램의 주요 제어 Module 사용
✧ 주요 제어 Module 내 종속 Module들은 Stub으로 대체 // Test Stub: 제어 Module이 호출하는 타 Module 기능을 단순히 수행하는 도구로, 일시적 필요 조건만 가진 시험용 Module
✦ 2) 깊이 우선 통합법 혹은 넓이 우선 통합법에 따라 하위 Module인 Stub들이 한 번에 하나씩 실제 Module로 교체
✦ 3) Module 통합 시마다 Test 실시
✦ 4) 새 Error 미발생 보증을 위해 회귀 Test 진행
Bottom Up Integration Test (=상향식 통합 Test)
✦ 하위 Module에서 상위 Module로 통합해가며 Test
✧ 가장 하위 Module부터 Test하기 때문에 Stub이 불필요하지만 주요 제어 Module과 관련된 종속 Module Group인 Cluster 필요
Bottom Up Integration Test 과정
✦ 1) 하위 Module들을 Cluster로 결합
✦ 2) 상위 Module에서 Data I/O 확인을 위해 Dummy Module인 Driver 작성
✦ 3) 통합된 Cluster 단위로 Test 수행
✦ 4) Test 완료 시 Cluster는 상위로 이동해 결합 후 Driver는 실제 Module로 대체
✧ Test Driver: Test 대상의 하위 Module 호출 후 Parameter에 Argument 전달 및 Module Test 수행 후 결과 도출 도구
✧ 시험용 Module일 뿐인 Test Stub보다 작성 어려움
혼합식 Test (=Sandwich식 통합 Test)
✦ 하위 수준에서는 상향식 통합 Test, 상위 수준에서는 하향식 통합 Test를 적용하여 최적화 Test 지원
Regression Testing (=회귀 테스팅)
✦ 이미 Test된 제품의 Test를 반복해 통합 Test로 인해 변경된 Module 및 Component 새 Error 여부 점검
✦ 모든 Test Case를 이용해 Test하는게 좋지만 시간 및 비용 고려 기능 변경 부분에 Test 가능한 Test Case만 선정



