본문 바로가기
PM으로 성장하기/개발 공부

테스트 케이스, 테스트 레벨, 테스트 유형, 결함 심각도별 분류

by 고양이 고씨 2023. 7. 2.

테스트 케이스

요구사항에 준수하는지 확인하기 위해 입력값, 실행 조건, 예상된 결과의 집합이다. 테스트 케이스에는 식별자(고유하게 식별하기 위한 항목 식별자), 테스트항목(테스트 모듈에 대한 간략한 내용), 입력명세(테스트 실행 시 입력할 값 및 조건), 출력명세(실행 시 기대되는 결과), 환경설정(테스트 수행 시의 환경), 특수절차요구(수행 시 요구되는 절차), 의존성을 포함한다.

 

테스트 레벨

- 단위 테스트: 사용자 요구사항에 대한 단위 모듈을 테스트한다. 자료구조, 인터페이스, 외부 I/O, 오류 처리 등을 테스트한다.

- 통합 테스트: 단위 테스트를 통과한 컴포넌트의 인터페이스를 테스트한다. 

- 시스템 테스트: 개발 프로젝트 차원에서 정의된 전체 시스템에 대해 테스트한다. 기능 뿐 아니라 성능, 보안, 메뉴 구조 등의 비기능적인 테스트도 수행한다.

- 인수 테스트: 계약 상 요구사항이 만족되었는지 확인하기 위해 테스트한다. 알파 테스트, 베타 테스트가 이에 해당한다.

 

테스트 유형(블랙박스 테스트 한정)

- 동등 분할 테스트: 입력 데이터의 유효값과 무효값을 그룹핑하여 대표값으로 테스트를 한다

- 경계값 테스트: 경계값을 포함하여 최소값 바로 위, 최대치 바로 아래 등의 테스트를 한다

- 결정 테이블 테스트: 요구사항의 논리와 발생 조건을 테이블 형태로 나열하여 조건과 행위를 모두 테스트한다

- 상태 전이 테스트: 테스트 대상이나 객체의 상태를 구분하여, 이벤트에 의해 상태가 변경되는 경우의 수를 테스트한다

- 유스케이스 테스트: 시스템이 실제 사용되는 유스케이스를 기반으로 프로세스 흐름을 테스트한다

- 분류 트리 테스트: 트리 구조로 분석 및 표현하여 테스트 케이스를 설계한다

- 페어와이즈 테스트: 테스트 데이터 간의 최소 한 번씩 조합하여 테스트한다

- 원인-결과 그래프 테스트: 그래프를 활용하여 입력데이터 간의 관계와 출력의 영향을 분석하여, 효용성이 높은 케이스를 선정하여 테스트한다

- 비교테스트: 여러 버전의 프로그램에 같은 입력값을 넣어서 동일한 결과가 나오는지 테스트한다

- 오류 추정 테스트: 개발자가 범할 수 잇는 실수를 추정하여 결험이 검출되도록 테스트를 한다

 

결함 심각도별 분류

- 치명적(Critical): 기능이나 제품의 테스트를 오나전히 방해하고 못하게 하는 결함(데이터 손실, 시스템 충돌)

- 주요(Major): 기대한 결과와 많이 다르게 작동하거나 기능을 하지 못함(기능 장애)

- 보통(Normal): 특정 기준을 충족하지는 못하나 전체에 영향을 주지않는 일부 부자연스러운 결함(사소한 기능 오작동)

- 경미한(Minor): 사용성의 불편함을 유발(UI 잘림현상 등)

- 단순(Simple): 사소한 버그로 기능에 영향은 없으나 수정되어야 함(미관상 좋지 않은 것)

 

728x90

'PM으로 성장하기 > 개발 공부' 카테고리의 다른 글

연계 모듈 구현  (0) 2023.09.04
딥링크(URI Sheme, App Links, Universal Link, Intent Scheme), 디퍼드 딥링크  (0) 2023.07.25
미들웨어  (0) 2023.06.27
ETL(Extract, Transform, Load)  (0) 2023.06.14
Proxy, Gateway  (0) 2023.06.14

댓글