Certificate/정보처리기사

[2과목 소프트웨어 개발] 애플리케이션 테스트 관리 - 060. 테스트 케이스 / 테스트 시나리오 / 테스트 오라클

S_sun 2024. 7. 9. 20:20

1. ⭐ 테스트 케이스 (Test Case)

  • 사용자 요구사항을 정확하게 준수했는지 확인하기 위해 설계된 입력 값, 실행 조건, 기대 결과 등으로 구성된 테스트 항목에 대한 명세서
  • 명세 기반 테스트의 설계 산출물에 해당
  • 테스트 오류 방지, 인력, 시간 낭비 감소
  • 테스트 목표와 방법을 설정한 후 작성
  • 시스템 설계 단계에서 작성하는 것이 가장 이상적

2. 테스트 케이스 작성 순서

1) 테스트 계획 검토 및 자료 확보

  • 테스트 계획서를 재검토하여 테스트 대상 범위 및 접근 방법을 이해
  • 시스템 요구사항과 기능 명세서를 검토하고 테스트 대상 시스템의 정보 확보

2) 위험 평가 및 우선순위 결정

  • 결함의 위험 정도에 따른 운선순위 결정
  • 어느 부분에 초점을 맞춰 테스트할지 결정

3) 테스트 요구사항 정의

  • 사용자 요구사항이나 테스트 대상 재검토
  • 테스트 특정, 조건, 기능을 분석

4) 테스트 구조 설계 및 테스트 방법 결정

  • 테스트 케이스의 형식과 분류 방법을 결정
  • 테스트 절차, 장비, 도구, 테스트 문서화 방법을 결정

5) 테스트 케이스 정의

  • 요구사항에 따라 테스트 케이스 작성
  • 입력 값, 실행 조건, 예상 결과 기술

6) 테스트 케이스 타당성 확인 및 유지 보수

  • 소프트웨어 기능 또는 환경 변화에 따라 테스트 케이스 갱신
  • 테스트 케이스 유용성 검토

3. 테스트 시나리오 (Test Scenario)

  • 테스트 케이스를 적용하는 순서에 따라 여러 개의 테스트 케이스들을 묶은 집합
  • 테스트 순서에 대한 구체적인 절차, 사전 조건, 입력 데이터 등 설정
  • 순서를 미리 정함으로써 테스트 항목을 빠짐없이 수행

4. 테스트 시나리오 작성 시 유의사항

  • 시스템별, 모듈별, 항목별 여러 개의 시나리오로 분리하여 작성
  • 요구사항과 설계 문서를 토대로 작성
  • 식별자 번호, 순서 번호, 테스트 데이터, 테스트 케이스, 예상 결과, 확인 등을 포함
  • 유스케이스 간 업무 흐름이 정상적인지 테스트 할 수 있도록 작성
  • 개발된 모듈 간의 연계가 정상적으로 동작하는지 테스트 할 수 있도록 작성

5. ⭐ 테스트 오라클 (Test Orcle)

  • 테스트 결과가 올바른지 판단하기 위해 사전에 정의된 참 값을 대입하여 비교하는 기법 및 활동
  • 테스트 오라클 특징
    • 제한된 검증 : 모든 테스트 케이스에 적용 불가
    • 수학적 기법 : 값을 수학적 기법을 이용하여 구함
    • 지동화 기능 : 프로그램의 실행, 결과 비교, 커버리지 측정 등을 자동화

6. 테스트 오라클 종류

1) 참 (True) 오라클

  • 모든 테스트 케이스의 입력 값에 대해 기대하는 결과를 제공
  • 발생된 모든 오류 검출 가능
  • 항공기, 은행, 발전소 소프트웨어 등 미션 크리티컬한 업무에서 사용

2) 샘플링 (Sampling) 오라클

  • 특정 몇몇 테스트 케이스의 입력 값들에 대해서만 기대하는 결과를 제공
  • 일반적인 업무, 게임, 오락 에서 사용

3) 추정(Heuristic) 오라클

  • 샘플링 오라클 개선
  • 특정 테스트 케이스의 입력 값에 대해 기대하는 결과 제공
  • 나머지 입력 값들에 대해서 추정으로 처리하는 오라클
  • 일반적인 업무, 게임, 오락 에서 사용

4) 일관성(Consistent) 검사 오라클

  • 애플리케이션의 변경이 있을 때, 테스트 케이스의 수행 전과 후의 결과 값이 동일한지 확인하는 오라클
728x90
반응형