본문 바로가기

정보처리기사 실기/2020 정처기 암기 모음

[2020 정보처리기사 실기 암기] 7-2. 애플리케이션 통합 테스트

* 통합테스트

  소프트웨어 각 모듈 간 인터페이스 관련 오류 및 결함 찾기 위한 체계적 테스트 기법

  단위 테스트 끝난 모듈 또는 컴포넌트 단위 프로그램이 설계 단계에서 제시한 애플리케이션과 동일하게 구현됐는지

  (단위테스트 - 통합테스트 - 시스템테스트 - 인수테스트)

 

* 하향식 통합 수행 단계

 1) 메인 제어 모듈은 작성된 프로그램 사용, 아직 작성 안된 하위 모듈 제어

 2) 위에서 아래로 내려오기 때문에 검사 초기에 시스템 구조 파악

 3) 모듈 및 모든 하위 컴포넌트 대신하여 더미 모듈인 스텁 개발

 4) BFS, DFS 방식에 따라 하위 모듈인 스텁이 한번에 하나씩 실제 모듈 대체

 5) 각 모듈 또는 컴포넌트 통합하면서 테스트 수행

 6) 테스트 완료시 스텁이 실제 모듈 또는 컴포넌트로 자가성

 

* 상향식 통합 수행 단계

 1) 하위 레벨의 모듈 또는 컴포넌트들이 하위 모듈의 기능을 수행하는 클러스터로 결합

 2) 상위의 모듈에서 데이터의 입력과 출력을 확인하기 위한 더미 모듈이 드라이버를 작성

 3) 각 통합된 클러스터 단위 테스트 수행

 4) 테스트 후 각 클러스터들은 프로그램 위로 결합, 드라이버는 실제 모듈이나 컴포넌트가 됨

 

* 통합 테스트 방법

 - 빅뱅 방식 : 모든 모듈 동시에 통합 후 테스트, 드라이버/스텁 없이 실제 모듈로 테스트

 - 하향식 방식 : 최상위 모듈부터 하위 모듈 통합하면서 테스트, 테스트 스텁 필요

 

* 테스트 실행 도구

 - 데이터 주도 접근 방식 : 테스트 데이터를 스프레드시트에 저장, 읽고 실행, 스크립트 언어에 익숙하지 않은 테스터

 - 키워드 주도 접근 방식 : 테스트 수행 동작을 나타내는 키워드와 테스트 데이터를 스프레드 시트에 저장

                                   키워드를 이용하여 테스트 수행 정의, 대상 애플리케이션 특성에 맞게 키워드 테일러링 수행

 

* 테스트 하네스 구성요소

 드라이버, 스텁, 슈트, 케이스, 스크립트, 목 오브젝트

- 목 오브젝트 : 사용자의 행위를 조건부로 사전에 입력하면 그 상황에 예정된 행위를 수행하는 객체

 

* 테스트 하네스 구성요소 중 테스트 슈트

  테스트 대상 컴포넌트나 모듈, 시스템에 사용되는 테스트 케이스 집합

 

* 소프트웨어 결함

 - 에러/오류 : 에러는 결함의 원인, 일반적으로 사람에 의해 생성

 - 실패/문제 : 소프트웨어 제품에 포함된 결함이 실행됨

 

* 결함 관리 프로세스 순서

 1) 에러 발견 / 2) 에러 등록 / 3) 에러 분석 / 4) 결함 확정

 5) 결함 할당 / 6) 결함 조치 / 7) 결함 조치 검토 및 승인

 

* 결함 추이 분석 유형

 - 결함 분포 분석 : 각 애플리케이션 모듈 또는 컴포넌트 특정 속성에 해당하는 결함의 수 측정하여 분포 분석

 - 결함 추세 분석 : 테스트 진행 시간의 흐름에 따른 결함의 수를 측정하여 결함 분석

 - 결함 에이징 분석 : 등록된 결함에 대해 특정한 결함 상태의 지속 시간을 측정하여 분석

 

* 테스트 커버리지

  주어진 테스트 케이스에 의해 수행되는 소프트웨어 테스트 범위 측정, 테스트 품질 측정 기준

  테스트 정확성과 신뢰성을 향상시키는 역할

 

* 코드 커버리지 유형

  구문 커버리지, 결함 커버리지, 조건 커버리지, 조건/결정 커버리지,

  변경조건/결정 커버리지, 다중 조건 커버리지

 

* 조건/결정 커버리지

  전체 조건식뿐만 아니라 개별 조건식도 참 한번, 거짓 한번 결과가 되도록 수행하는 커버리지

 

* 결함 심각도별 분류

 - 치명적 결함 : 기능, 제품의 테스트를 완전히 방해 (데이터 손실, 시스템 충돌)

 - 주요 결함 : 기능이 기대와 많이 다르게 동작하거나 동작 못함 (기능 장애)

 - 보통 결함 : 특정 기준에 충족하지 못하거나 일부 기능이 부자연스럽게 결합 (사소한 기능 오작동)

 - 결미한 결함 : 사용상의 불편함을 유발하는 결함 (표준 위반, UI 잘림)

 - 단순 결함 : 사소한 버그는 기능에 영향이 없지만 수정되어야 함 (미관상 좋지 않음)

 

* 결함관리 항목

 결함 내용, 결함ID, 결함 유형, 발견일, 심각도, 우선순위, 시정조치 예정일, 수정 담당자, 재 테스트 결과, 종료일

 

* 테스트 단계별 테스트 자동화 도구

 - 테스트 계획 : 요구사항 관리

 - 테스트 분석/설계 : 테스트 케이스 생성

 - 테스트 수행 : 테스트 자동화, 정적분석, 동적분석, 성능 테스트, 모니터링

 - 테스트 관리 : 커버리지 측정, 형상 관리, 결함 추적/관리

 

* 테스트 리포팅

 테스트 결과정리, 테스트 요약 문서, 품질 상태, 테스트 결과서, 테스트 실행 절차 및 평가