단위 모듈 테스트의 개요

  • 프로그램의 단위 기능을 구현하는 모듈이 정해진 기능을 정확히 수행하는지 검증하는 것
  • 단위 테스트(Unit Test)라고도 하며 화이트박스 테스트와 블랙박스 테스트기법을 사용한다.
  • 단위 모듈 테스트의 기준은 단위 모듈에 대한 코드이므로 시스템 수준의 오류는 잡아낼 수 없다.

테스트 케이스(Test Case)

  • 소프트웨어가 사용자의 요구사항을 정확하게 준수했는지를 확인하기 위해 설계된 입력 값, 실행 조건, 기대 결과 등으로 구성된 테스트 항목에 대한 명세서로, 명세 기반 테스트의 설계 산출물에 해당된다.
  • 단위 모듈을 테스트하기 전에 테스트에 필요한 입력 데이터, 테스트 조건, 예상 결과 등을 모아 테스트 케이스를 만든다.
  • 테스트 케이스를 이용하지 않고 수행하는 직관적인 테스트는 특정 요소에 대한 검증이 누락되거나 불필요한 검증의 반복으로 인해 인력과 시간을 낭비할 수 있다.
  • ISO/IEC/IEEE 29119-3 표준에 따른 테스트 케이스의 구성요소는 다음과 같다.
    • 식별자(Identifier) : 항목 식별자, 일련 번호
    • 테스트 항목(Test Item) : 테스트 대상(모듈 또는 기능)
    • 입력 명세(Input Specification) : 입력 데이터 또는 테스트 조건
    • 출력 명세(Output Specification) : 테스트 케이스 수행 시 예상되는 출력 결과
    • 환경 설정(Environmental Needs) : 필요한 하드웨어나 소프트웨어의 환경
    • 특수 절차 요구(Special Procedure Requirement) : 테스트 케이스 수행 시 특별히 요구되는 절차
    • 의존성 기술(Inter-case Dependencies) : 테스트 케이스 간의 의존성

화이트박스 / 블랙박스 테스트

  • 화이트박스는 모듈의 소스 코드를 오픈시킨 상태에서 소스 코드의 모든 논리적인 경로를 테스트한다.
  • 블랙박스 테스트는 소프트웨어가 수행할 기능이 완전히 작동되는 것을 입증하는 테스트이다.

테스트 프로세스

  • 테스트를 위해 수행하는 모든 작업들이 테스트의 목적과 조건을 달성할 수 있도록 도와주는 것

테스트 프로세스 5단계

  • 계획 및 제어 단계 : 테스트 목표를 계획, 계획대로 진행되도록 제어
  • 분석 및 설계 단계 : 테스트 시나리오와 테스트 케이스를 작성
  • 구현 및 실현 단계 : 효율적인 테스트를 위해 테스트 프로시저에 명세
  • 평가 단계 : 테스트가 계획과 목표에 맞게 수행되었는지 평가 및 기록
  • 완료 단계 : 테스트 자료를 활용하기 위해 수행 과정과 산출물 기록 및 저장
profile
비전공자 개발초보입니다!

0개의 댓글

Powered by GraphCDN, the GraphQL CDN