[7. 애플리케이션 테스트 관리] 개발 단계에 따른 테스트

soojung·2023년 10월 3일
0

정보처리기사 실기

목록 보기
12/14
post-thumbnail

💡 V-모델

소프트웨어 개발 단계에 따라 단위>통합>시스템>인수 테스트로 분류 / 분류된 것 : "테스트 레벨"

  • 애플리케이션 테스트 + 소프트웨어 개발 단계 = V-모델

💡 단위 테스트 (Unit)

  • 코딩 직후 소프트웨어 설계 최소 단위인 모듈 or 컴포넌트에 초점
  • 사용자의 요구사항을 기반으로 한 기능성 테스트를 최우선으로 진행
  • 구조 기반 테스트 (논리 흐름, 주로 사용) / 명세 기반 테스트

💡 통합 테스트 (Integration)

  • 단위 테스트가 완료된 모듈들을 결합하여, 하나의 시스템을 완성시키는 과정에서의 테스트
    즉, 단위 테스트가 끝난 모듈을 통합하는 고정에서 발생하는 오류 및 결함을 찾는 테스트 기법
    • 모듈 간 or 통합된 컴포넌트 간 상호 작용 오류 검사
  • 종류
    • 비점진적 통합 방식 : 단계적 통합 절차 없이, 모든 모듈이 미리 결합된 프로그램 전체를 테스트
    • 점진적 통합 방식 : 모듈 단위로 단계적으로 통합하면서 테스트

✏️ 하향식 통합 테스트

  • 상위 모듈 > 하위 모듈 방향으로 통합하며 테스트
    • 깊이 우선 통합법 or 넓이 우선
  • 절차
    1) 주요 제어 모듈의 종속 모듈들은 스텁(Stub)으로 대체
    2) 깊이 or 넓이 우선 통합법으로 하위 모듈인 스텁들이 한 번에 하나씩 실제 모듈로 교체
    3) 모듈 통합될 때마다 테스트 실시
    4) 새로운 오류 발생 X 보증 위해 회귀 테스트 실시

✏️ 상향식 통합 테스트

  • 하위 모듈 > 상위 모듈 방향으로 통합하며 테스트
  • 절차
    1) 하위 모듈을 클러스터로 결합
    2) 상위 모듈에서 데이터 입출력 확인 위해 더미 모듈인 드라이버(Driver) 작성
    3) 통합된 클러스터 단위로 테스트
    4) 테스트 완료 시, 클러스터는 상위로 이동하여 결합 / 드라이버는 실제 모듈로 대체

✏️ 혼합식 통합 테스트

(= 샌드위치식 통합 테스트 방법)
상향식 통합 (하위 수준) & 하향식 통합 (상위 수준) => 최적 테스트 지원

📎 회귀 테스팅

통합 테스트로 인해 변경된 모듈 or 컴포넌트에 새로운 오류가 있는지 확인하는 테스트
=> 이미 테스트된 프로그램의 테스팅을 반복

💡 시스템 테스트 (System)

  • 개발된 소프트웨어가 해당 컴퓨터 시스템에서 완벽하게 수행되는가를 점검하는 테스트
  • 기능적 or 비기능적 요구사항 구분하여 각각 만족하는지

💡 인수 테스트 (Acceptance)

  • 사용자의 요구사항을 충족하는지 초점
  • 개발한 소프트웨어를 사용자가 직접 테스트함
  • 사용자 인수 테스트 : 사용자가 시스템 사용의 적절성 여부 확인
  • 운영상의 인수 테스트 : 시스템 관리자가 시스템 인수 시 수행
  • 계약 인수 테스트 : 계약상의 인수/검수 조건 준수하는지
  • 규정 인수 테스트 : 소프트웨어가 정부 지침, 법규 등 규정에 맞게 개발 되었는지

✏️ 알파 테스트

  • 개발자의 장소에서 사용자가 개발자 앞에서 수행
  • 테스트는 통제된 환경해서 수행됨
  • 오류와 사용상 문제점을 함께 확인하며 기록

✏️ 베타 테스트

  • 선정된 최종 사용자가 여러 사용자 앞에서 수행
  • 실업무를 가지고 사용자가 직접 테스트

References / https://m.blog.naver.com/mdstec_auto/221175910910 (image)

profile
( 발을 힘차게 뻗으며 😎 )

0개의 댓글