애플리케이션 테스트 프로세스

clay·2023년 2월 11일
0

소프트웨어 개발

목록 보기
26/47
post-thumbnail

애플리케이션 테스트 프로세스

애플리케이션 테스트 프로세스는 개발된 소프트웨어가 사용자의 요구대로 만들어졌는지, 결함은 없는지 등을 테스트하는 절차로, 다음과 같은 순서로 진행된다.

테스트 계획 ➡️ 테스트 분석 및 디자인 ➡️ 테스트 케이스 및 시나리오 작성 ➡️ 테스트 수행 ➡️ 테스트 결과 평가 및 리포팅 ➡️ 결함 추적 및 관리

  • 애플리케이션 테스트를 마치면 테스트 계획서, 테스트 케이스, 테스트 시나리오, 테스트 결과서가 산출된다.

테스트 계획서

  • 테스트 목적, 범위, 일정, 수행 절차, 대상 시스템 구조, 조직의 역할 및 책임 등 테스트 수행을 계획한 문서

테스트 케이스

  • 사용자의 요구사항을 얼마나 준수하는 확인하기 위한 입력 값, 실행 조건, 기대 결과 등으로 만들어진 테스트 항목의 명세서

테스트 시나리오

  • 테스트를 수행할 여러 개의 테스트 케이스의 동작 순서를 기술한 문서

테스트 결과서

  • 테스트 결과를 비교∙분석한 내용을 정리한 문서

테스트 계획

테스트 계획 단계에서는 프로젝트 계획서, 요구 명세서 등을 기반으로 테스트 목표를 정의하고 테스트 대상 및 범위를 결정한다.

  • 테스트 대상 시스템의 구조를 파악한다.
  • 테스트에 투입되는 조직 및 비용을 산정한다.
  • 테스트 시작 및 종료 조건을 정의한다.

테스트 시작 조건

  • 테스트 계획, 일정, 환경 구축, 사용자 요구사항에 대한 테스트 명세서, 투입 조직 및 참여 인력의 역할과 책임 등이 완료되면 테스트가 시작되도록 조건을 정의할 수 있으며, 모든 조건을 만족하지 않아도 테스트를 시작하도록 지정할 수 있다.

테스트 종료 조건

  • 정상적으로 테스트를 완료한 경우, 테스트 일정이 만료된 경우, 테스트 비용이 모두 소진된 경우 등 업무 기능의 중요도에 따라 테스트 종료 조건을 다르게 지정할 수 있다.
  • 테스트 계획서를 작성한다.

테스트 분석 및 디자인

테스트 분석 및 디자인 단계에서는 테스트의 목적과 원칙을 검토하고 사용자의 요구사항을 분석한다.

  • 테스트에 대한 리스크 분석 및 우선순위를 결정한다.
  • 테스트 데이터, 테스트 환경, 테스트 도구 등을 준비한다.

테스트 데이터

테스트 데이터는 시스템의 기능이나 적합성 등을 테스트하기 위해 만든 데이터 집합으로, 소프트웨어의 기능을 차례대로 테스트할 수 있도록 만든 데이터이다.

  • 잘못된 데이터는 잘못된 결과를 도출하기 때문에 효율적인 테스트를 위해서는 올바른 테스트 데이터를 준비해야 한다.
  • 테스트 데이터 종류
  • 실제 데이터: 선행된 연산에 의해 만들거나 실제 운영되는 데이터를 복제한 데이터
  • 가상 데이터: 스크립트를 통해서 인위적으로 만든 데이터

테스트 케이스 및 시나리오 작성

테스트 케이스 및 시나리오 작성 단계에서는 테스트 케이스의 설계 기법에 따라 테스트 케이스를 작성하고 검토 및 확인한 후 테스트 시나리오를 작성한다.

  • 테스트용 스크립트를 작성한다.
테스트 스크립트
테스트 실행 절차나 수행 방법 등을 스크립트 언어로 작성한 파일

테스트 수행

테스트 수행 단계에서는 테스트 환경을 구축한 후 테스트를 수행한다.

  • 테스트의 실행 결과를 측정하여 기록된다.

테스트 환경 구축

테스트 환경 구축은 개발된 소프트웨어가 실제 시스템에서 정상적으로 작동하는지 테스트하기 위해 실제 시스템과 동일하거나 유사한 사양의 하드웨어, 소프트웨어, 네트워크 등의 시설을 구축하는 것이다.

  • 하드웨어: 서버, 클라이언트, 네트워크 등의 관련 장비 설치
  • 소프트웨어: 구축된 하드웨어 환경에 테스트할 소프트웨어 설치
  • 가상 시스템: 독립된 테스트 환경을 구축하기 힘든 경우, 가상 머신 기반의 서버 또는 클라우드 환경을 구축하고 네트워크는 VLAN과 같은 기법을 이용하여 논리적인 분할 환경을 구축한다.

테스트 결과 평가 및 리포팅

테스트 결과 평가 및 리포팅 단계에서는 테스트 결과를 비교 분석하여 테스트 결과서를 작성한다.

  • 테스트 결과서는 결함 내용 및 결함 재현 순서 등 결함을 중점적으로 기록한다.
  • 테스트가 종료되면 테스트 실행 절차의 리뷰 및 결과에 대한 평가를 수행하고, 그 결과에 따라 실행 절차를 최적화하여 다음 테스트에 적용된다.

결함 추적 및 관리

결함 추적 및 관리 단계에서는 테스트를 수행한 후 결함이 어디에서 발생했는지, 어떤 종류의 결함인지 등 결함을 추적하고 관리한다.

  • 결함 추적 및 관리를 통해 동일한 결함 발견 시 처리 시간 단축 및 결함의 재발 등을 방지할 수 있다.
  • 결함 관리 프로세스
    1️⃣ 에러 발견: 에러가 발견되면 테스트 전문가와 프로젝트팀이 논의한다.
    2️⃣ 에러 등록: 발견된 에러를 결함 관리 대장에 등록한다.
    3️⃣ 에러 분석: 등록된 에러가 실제 결함인지 아닌지를 분석한다.
    4️⃣ 결함 확정: 등록된 에러가 실제 결함이면 결함 확정 상태로 설정한다.
    5️⃣ 결함 할당: 결함을 해결할 담당자에게 결함을 할당하고 결함 할당 상태로 설정한다.
    6️⃣ 결함 조치: 결함을 수정하고, 수정이 완료되면 결함 조치 상태로 설정한다.
    7️⃣ 결함 조치 검토 및 승인: 수정이 완료된 결함에 대해 확인 테스트를 수행하고, 이상이 없으면 결함 조치 완료 상태로 설정한다.
Error
결함의 원인이 되는 것으로, 일반적으로 소프으웨어 개바자, 분석가 등 사람에 의해 발생한 실수를 의미한다.

Bug
에러/오류로 인해 소프트웨어 제품에 발생한 결함을 의미하며, 결함을 제거하지 않으면 소프트웨어 제품에 문제가 발생할 수 있다.
profile
샤코타임 팬

0개의 댓글