공부 일지/정보처리산업기사

[정보처리산업기사] 개발 단계에 따른 애플리케이션 테스트

배똥회장 2022. 4. 6. 22:21
728x90

 

 

 

1. 정의

  • 애플리케이션 테스트는 소프트웨어의 개발 단계에 따라 단위, 통합, 시스템, 인수 테스트로 분류
  • 테스트 레벨 : 개발 단계에 따라 분류된 것
  • 소프트웨어의 개발 단계에서부터 테스트를 수행 => 코드 상의 오류, 요구 분석의 오류, 설계 인터페이스 오류 등도 발견 가능
  • V-모델 : 애플리케이션 테스트와 소프트웨어 개발 단계를 연결하여 표현한 것

 

 

 

 

2. 단위 테스트(Unit Test)

  • 코딩 직후 소프트웨어 설계의 최소 단위인 모듈이나 컴포넌트에 초점을 맞춰 테스트하는 것
  • 인터페이스, 외부적 I/O, 자료 구조, 독립적 기초 경로, 오류 처리 경로, 경계 조건 등을 검사
  • 사용자 요구사항 기반의 기능성 테스트를 최우선으로 수행
  • 발견 가능한 오류 : 알고리즘 오류에 따른 원치 않는 결과, 탈출구가 없는 반복문의 사용, 틀린 계산 수식에 의한 잘못된 결과 등

 

 

 

 

3. 통합 테스트(Integration Test, 결합 테스트)

  • 단위 테스트가 완료된 모듈들을 결합하여 하나의 시스템으로 완성시키는 과정에서의 테스트를 의미

 

 

 

 

4. 시스템 테스트(System Test)

  • 개발된 소프트웨어가 해당 컴퓨터 시스템에서 완벽하게 수행되는가를 점검하는 테스트
  • 환경적인 장애 리스크를 최소화하기 위해서는 실제 사용 환경과 유사하게 만든 테스트 환경에서 테스트를 수행해야 함
  • 기능적 요구사항 : 요구사항 며에서, 비즈니스 절차, 유스케이스 등 명세서 기반의 블랙박스 테스트 시행
  • 비기능적 요구사항 : 성능 · 회복 · 보안 테스트, 내부 시스템의 메뉴 구조, 웹 페이지 내의 네비게이션 등 구조적 요소에 대한 화이트박스 테스트 시행

 

 

 

 

5. 인수 테스트(Acceptance Test)

  • 개발한 소프트웨어가 사용자의 요구사항을 충족하는지에 중점을 두고 테스트하는 방법
  • 사용자가 직접 테스트함
  • 인수 테스트에서 문제가 없을 경우 프로젝트 종료
  • 종류 : 사용자 인수 테스트, 운영상의 인수 테스트, 계약 인수 테스트, 규정 인수 테스트, 알파 테스트, 베타 테스트

 

 

 

 

6. 알파 테스트

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

 

 

 

 

7. 베타 테스트

  • 선정된 최종 사용자가 여러 명의 사용자 앞에서 행하는 테스트 기법
  • 필드 테스팅(Field Testing)이라고도 불림
  • 실업무를 가지고 사용자가 직접 테스트하는 것
  • 발견된 오류와 사용상의 문제점을 기록하고 개발자에게 주기적으로 보고

 

 

 

 

 

728x90