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

말하는 감자·2025년 1월 6일
0

정보처리기사 실기

목록 보기
20/29
post-thumbnail

애플리케이션 테스트 수행

단위 테스트

단위 테스트 개념

개별적인 모듈을 테스트한다.

목 객체 생성 프레임워크

  • 목 객체 유형
  1. 더미 객체: 테스트할 때만 객체가 필요하고 해당 객체의 기능까지 필요하지 않은 경우 사용
  2. 테스트 스텁: 제어 모듈이 호출하는 타 모듈의 기능을 단순이 수행하는 도구로 더미 객체의 단순 기능에 특정 상태를 가정해서 리턴(상위 모듈 테스트)
  3. 테스트 드라이버: 하위 모듈을 호출하고 결과를 도출(하위모듈 테스트)
  4. 테스트 스파이: 테스트 대상 클래스와 협력하는 클래스로 가는 출력을 검증하는데 사용
  5. 가짜 객체: 실제 협력 클래스의 기능을 대체해야 할 경우에 사용

통합 테스트

통합 테스트 개념

각 모듈 간의 인터페이스 관련 오류 및 결함을 찾아내기 위한 체계적인 테스트 기법

  • 하향식: 상위 모듈을 먼저 개발하고 하위 모듈이 완전히 구현되지 않았을때 스텁을 사용하여 하위 모듈의 역할 대신(상위모듈 테스트)
  • 상향식: 하위 모듈을 먼저 개발하고 상위 모듈이 완전히 구현되지 않았을때 드라이버를 사용하여 상위 모듈 역할 대신(하위 모듈 테스트)

    하스상드
    =하향식=스텁, 상향식=드라이버

테스트 자동화 도구 유형

  • 정적 분석 도구
    애플리케이션을 실행하지 않고 분석하는 도구
  • 테스트 실행 도구 유형
  1. 데이터 주도 접근 방식
  2. 키워드 주도 접근 방식
  • 성능 테스트 도구
  • 테스트 통제 도구

테스트 하네스

  • 개념
    컴포는트 및 모듈을 테스트하는 환경의 일부분으로 단위 또는 모듈 테스트에 사용하기 위해 코드 개발자가 작성
  • 테스트 하네스 구성요소
  1. 테스트 드라이버: 하위 모듈을 호출하고 파라미터를 전달하고, 모듈 테스트 수행 후의 결과를 도출하는 상향식 테스트에 필요
  2. 테스트 스텁: 제어 모듈이 호출하는 타 모듈의 기능을 단순히 수행하는 도구로 하향식 테스트에 필요
  3. 테스트 슈트: 테스트 대상 컴포넌트나 모듈에 사용되는 테스트 케이스의 집합
  4. 테스트 케이스: 입력값, 실행 조건, 기대 결과 등의 집합
  5. 테스트 스크립트: 자동화된 테스트 실행 절차에 대한 명세
  6. 목 오브젝트: 사용자의 행위를 조건부로 사전에 입력해 두면, 그 상황에 예정된 행위를 수행하는 객체

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

테스트 결과 분석

  • 소프트웨어 결함
    소프트웨어 결함을 말할 때 에러, 결함, 결점, 버그, 실패의 용어를 사용한다.
  1. 에러/오류: 에러는 결함의 원인이 되는 것으로 일반적으로 사람에 의해 생성된 실수
  2. 결함/결점/버그: 에러 또는 오류가 원인이 되어 소프트웨어 제품에 포함되어 있는 결함
  3. 실패/문제: 소프트웨어 제품에 포함된 결함이 실행될 때 발생되는 현상

테스트 리포팅

  1. 테스트 결과 정리: 모든 테스트가 완료되면 테스트 계획과 테스트 케이스 설꼐부터 모두 포함된 문서 작성
  2. 테스트 요약문서: 테스트 계획, 소요 비용, 테스트 결과로 판단 가능한 대상 소프트웨어 품질 상태를 포함한 문서 작성
  3. 품질 상태: 품질 상태는 정량화된 품질 지표인 테스트 성공률 등이 포함
  4. 테스트 결과서: 테스트 결과서는 결함과 관련한 사항을 중점적으로 기록하며, 결함의 내용 및 자원 정보 등을 상세하게 기록함
  5. 테스트 실행 절차 리뷰 및 평가: 단계별 테스트 종료 시 테스트 실행 절차를 리뷰하고 결과에 대한 평가를 수행하고, 그 결과에 따라 실행 절차를 최적화하여 다음 테스트에 사용

결함 관리 프로세스

결함 관리 계획 + 결함 기록 + 결함 검토 + 결함 수정 + 결함 재확인 + 결함 상태 추적 및 모니터링 활동 + 최종 결함 분석 및 보고서 작성

관기검수 재추분
=관리 기록 검토 수정 재확인 추적 분석

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

테스트 커버리지

  • 테스트 커버리지 개념
    주어진 테스트 케이스에 의해 수행되는 소프트웨어의 테스트 범위를 측정하는 테스트 품질 측정 기준
  • 테스트 커버리지 유형
  1. 기능 기반 커버리지: 테스트 대상 애플리케이션의 전체 기능을 모수로 설정하고, 실제 테스트가 수행된 기능의 수를 측정하는 방법
  2. 라인 커버리지: 애플리케이션 전체 소스 코드의 라인 수를 모수로 테스트 시나리오가 수행한 소스 코드의 라인 수를 측정하는 방법
  3. 코드 커버리지: 소프트웨어 테스트 충분성 지표 중 하나

    기라코

결합의 식별 및 관리

  • 결합 심각도별 분류
  1. 치명적 결함
  2. 주요 결함
  3. 보통 결함
  4. 경미한 결함
  5. 단순 결함
profile
주니어개발자(?)

0개의 댓글