정보관리기술/소프트웨어공학

통합테스트(Integration Test)

아이티신비 2024. 1. 11. 08:00

문제3) 통합테스트(Integration Test)에 대하여 다음을 설명하시오.

 

가. 비점진적 통합 방식과 점진적 통합 방식

나. 하향식(Top Down) 통합 테스트와 상향식(Bottom Up) 통합 테스트

다. 테스트 드라이버(Test Driver)와 테스트 스텁(Test Stub)


답)

 

 

1. 통합테스트의 개념과 비점진적 통합 방식과 점진적 통합 방식

가. 통합테스트의 개념

  • 소프트웨어 각 모듈간의 인터페이스 관련 오류 및 결함을 찾아내기 위한 테스트 방법

 

나. 비점진적 통합 방식과 점진적 통합 방식의 개념

구분
설명
비점진적 통합 방식
  • 모든 컴포넌트를 사전에 통합하여 한꺼번에 테스트하는 방법
  • 빅뱅 방식 등 활용
  • 소규모 소프트웨어에 유리, 단시간 내에 테스트 가능
  • 전체 프로그램이 대상으로 오류 발견 및 장애 위치 파악, 수정 어려움
점진적 통합 방식
  • 모듈 단위로 단계적으로 통합하며 테스트 하는 방법
  • 오류 수정 용이, 인터페이스와 연관된 오류를 완전히 테스트 할 수 있음
  • 상향식 통합 방식과 하향식 통합 방식이 있음
  • 점진적 통합 방식은 상향식 및 하향식 통합방식으로 테스트가 가능

 

2. 하향식(Top Down) 통합 테스트와 상향식(Bottom Up) 통합 테스트

가. 하향식 통합 테스트의 설명

항목
설명
개념도
설명
방식
  • 메인 제언 모듈(프로그램)로 부터 아래 방향으로 제어의 경로를 따라 하향식으로 통합하면서 테스트를 진행
  • 메인 제어 모듈에 통합되는 하위 모듈과 최하위 모듈은 '깊이-우선' 또는 '너비-우선' 방식으로 통합
수행단계
① 메인 제어 모듈은 작성된 프로그램을 사용. 작성되지 않은 하위 제어 모듈 및 모든 하위 컴포넌트를 대신하여 더미 모듈인 스텁(Stub)을 개발
② 깊이-우선 방식 또는 너비-우선 방식에 따라 하위 모듈인 스텁이 한번에 하나씩 실제 모듈로 대체
③ 각 모듈 또는 컴포넌트를 통합하면서 테스트를 수행
④ 테스트 완료 후 스텁을 실제 모듈 또는 컴포넌트로 작성

 

나. 상향식 통합 테스트의 설명

항목
설명
개념도
설명
방식
  • 최하위 레벨의 모듈 또는 컴포넌트로 부터 위쪽 방향으로 제어의 경로를 따라 이동하면서 구축 및 테스트를 진행
수행단계
① 최하위 레벨의 모듈이나 컴포넌트들이 하위 모듈의 기능을 수행하는 클러스터로 결합
② 상위의 모듈에서 데이터의 입력과 출력을 확인하기 위한 더미 모듈인 드라이버(Driver)를 작성
③ 각 통합된 클러스트 단위인 테스트를 수행. 테스트 완료 후 각 클러스터들은 프로그램의 위쪽으로 결함되며, 드라이버는 실제 모듈 및 컴포넌트로 대체
  • 상향식과 하향식 통합테스트 시 테스트 드리이버와 테스트 스텁이 더미 모듈 역할 수행

 

3. 테스트 드라이버(Test Driver)와 테스트 스텁(Test Stub)

가. 테스트 드라이버의 설명

항목
설명
개념
상향식 테스트에서 아직 통합되지 않은 상위 컴포넌트의 동작을 시뮬레이션하는 모의 모듈
필요시기
하위 컴포넌트는 존재하지만 상위 컴포넌트가 없는 경우
테스트 방식
상향식(Bottom-up)
개념도

 

나. 테스트 스텁의 설명

항목
설명
개념
테스트 대상과 협력해 구동되는 컴포넌트를 대신하는 더미 컴포넌트
필요시기
상위 컴포넌트는 존재하지만 하위 컴포넌트가 없는 경우
테스트 방식
하향식(Top-down)
개념도
대표