자격증/2020 정보처리기사 실기

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

  • -
728x90

1. 애플리케이션 통합 테스트 수행

  • 통합 테스트
    • 통합 테스트 수행 방법의 분류
      • 하향식 통합
        • 1단계 : 메인 제어 모듈은 작성된 프로그램을 사용하고, 아직 작성되지 않은 하위 모듈 제어
        • 2단계 : 검사 초기에 시스템 구조가 파악되어야 함
        • 3단계 : 모듈 및 모든 하위 컴포넌트를 대신하여 더미 모듈인 스텁 개발
        • 4단계 : 깊이 우선 or 너비 우선 방식에 따라 스텁이 한 번에 하나씩 실제 모듈로 대체
        • 5단계 : 각 모듈 또는 컴포넌트를 통합하면서 테스트 수행
        • 6단계 : 테스트가 완료되면 스텁이 실제 모듈 또는 컴포넌트로 작성
        • 스텁(stub) : 모듈 및 모든 하위 컴포넌트를 대신 하는 더미 모듈
      • 상향식 통합
        • 1단계 : 하위 레벨의 모듈 또는 컴포넌트들이 하위 모듈의 기능을 수행하는 클러스터로 결합
        • 2단계 : 상위의 모듈에서 데이터의 입력과 출력을 확인하기 위한 더미 모듈인 드라이버 작성
        • 3단계 : 각 통합된 클러스터 단위 테스트
        • 4단계 : 테스트가 완료되면 각 클러스터들은 프로그램의 위쪽으로 결합되며, 드라이버는 실제 모듈 또는 컴포넌트로 대체
        • 드라이버(driver) : 상위의 모듈에서 데이터의 입력과 출력을 확인하기 위한 더미 모듈
    • 통합 테스트 수행 방법 간 비교
      • 테스트 방안 빅뱅 테스트 상향식 테스트 하향식 테스트
        테스트 수행 방법 모든 모듈을 동시에 통합 후 테스트 수행 최하위 모듈부터 점진적으로 상위 모듈과 함께 테스트  최상위 모듈부터 하위모듈들을 통합하면서 테스트
        드라이버/스텁 드라이버/스텁 없이 실제 모듈로 테스트 테스트 드라이버 필요 테스트 스텁 필요
        장점 단시간 테스트 가능
        작은 시스템에 유리
        장애 위치 파익 쉬움
        모든 모듈 개발 시간 낭비 필요 없음
        장애 위치 파악 쉬움
        이른 프로토타입 가능
        중요 모듈의 선 테스트 가능
        단점 장애 위치 파악 어려움
        모든 모듈이 개발되어야 가능
        중요 모듈들이 마지막 테스트 가능성 높음
        이른 프로토타입 어려움
        많은 스텁 필요
        하위 모듈들의 불충분한 테스트 수행
    • 테스트 자동화 도구
      • 테스트 도구를 활용하여 반복적인 테스트 작업을 스크립트 형태로 구현함으로써, 테스트 시간 단축과 인력 투입 비용을 최소화하는 한편, 쉽고 효율적인 테스트 수행 가능
    • 테스트 자동화 도구 유형
      • 정적 분석 도구(Static Analysis Tools)
      • 테스트 실행 도구(Text Execution Tools)
      • 성능 테스트 도구(Performance Test Tools)
      • 테스트 통제 도구(Test Control Tools)
    • 테스트 하네스
      • 테스트 드라이버
      • 테스트 스텁
      • 테스트 슈트
      • 테스트 케이스
      • 테스트 스크립트
      • 목 오브젝트
    • 테스트 단계별 테스트 자동화 도구
      • 테스트 계획 : 요구사항 관리
      • 테스트 분석/설계 : 테스트 케이스 생성
      • 테스트 수행 : 테스트 자동화, 정적 분석, 동적 분석, 성능 테스트, 모니터링
      • 테스트 관리 : 커버리지 측정, 형상 관리, 결함 추적/관리

 

 

2. 애플리케이션 테스트 결과 분석

  • 테스트 결과 분석
    • 소프트웨어 결함
      • 에러(Error)/오류 : 결함(Defect)의 원인, 일반적으로 사람에 의해 생성된 실수
      • 결함/결점/버그(Bug) : 에러 또는 오류가 원인, 제거하지 않으면 제품이 실패하고나 문제가 발생
      • 실패/문제 : 결함이 실행될 때 발생되는 현상
    • 테스트 완료 조건
    • 테스트 리포팅
      • 테스트 결과 정리
      • 테스트 요약 문서
      • 품질 상태
      • 테스트 결과서
      • 테스트 실행 절차 및 평가
  • 결함 관리
    • 테스트 결함 관리 개념
    • 결함 추적 관리 활동
    • 결함 관리 프로세스
      • 에러 발견
      • 에러 등록
      • 에러 분석
      • 결함 확정
      • 결함 할당
      • 결함 조치
      • 결함 조치 검토 및 승인
  • 결함 추이 분석

 

 

3. 애플리케이션 개선 조치사항 작성

  • 테스트 커버리지
    • 테스트 커버리지 유형
      • 기능 기반 커버리지
      • 라인 커버리지
      • 코드 커버리지
    • 코드 커버리지 유형
      • 구문 커버리지 : 프로그램 내의 모든 명령을 적어도 한 번 수행함
      • 결정 커버리지 : 프로그램 내 전체 결정문이 적어도 한 번은 참과 거짓의 결과를 수행
      • 조건 커버리지 : 결정 명령문 내의 각 조건이 적어도 한 번은 참과 거짓의 결과가 되도록 수행
      • 조건/결정 커버리지 : 전체 조건식 뿐만 아니라 개별 조건식도 참, 거짓 각 한 번씩 결과가 되도록 수행
      • 변경 조건/결정 : 전체 조건식에 독립적으로 영향을 주도록 함으로써 조건/결정 커버리지를 향상 시킴
      • 다중 조건 : 결정 조건 내 모든 개발 조건식의 모든 가능한 조합을 100% 보장

 

  • 결함의 식별 및 관리
    • 단계별 결함 유입 종류
      • 기획 시 유입 결함
      • 설계 시 유입 결함
      • 코딩 시 유입 결함
      • 테스트 부족 유입 결함
    • 결함 심각도별 분류
      • 치명적 결함 : 기능, 제품의 테스트를 완전히 방해 또는 못하게 하는 결함
      • 주요 결함 : 기능이 기대와 많이 다르게 동작 또는 기능이 해야하는 것을 못함
      • 보통 결함 : 특정 기준을 충족하지 못함 또는 전체에 영향을 주지 않는 일부 기능이 부자연스러움
      • 경미한 결함 : 사용상 불편함 유발
      • 단순 결함 : 기능에는 영향이 없지만 수정되어야 함
    • 결함 우선순위
      • 결정적 -> 높음 -> 보통 -> 낮음
    • 결함 관리 항목
      • 결함 내용
      • 결함 ID
      • 결함 유형
      • 발견 일
      • 심각도
      • 우선순위
      • 시정 조치 예정일
      • 수정 담당자
      • 재 테스트 결과
      • 종료일
728x90
300x250
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.