결과값 정상/비정상 기준 |
I. 미리 정의된 참값과 결과 비교, 테스트 오라클의 개요
가. 테스트 오라클(Test Oracle)의 정의
- 테스트 수행 결과가 참, 거짓인지 판단하기 위해 미리 정의된 참을 대입하여 실제 결과와 비교하는 기법
나. 테스트 오라클의 특징
특징 |
설명 |
제한된 검증 |
모든 테스트 항목 적용 불가 |
수학적 기법 |
테스트 수행 시 수학적 기법을 이용, 오라클 값을 구할 수 있음 |
자동화 기능 |
테스트 대상 프로그램의 실행, 결과 비교, 커버리지 측정 |
II. 테스트 오라클의 유형 및 장단점
가. 테스트 오라클의 유형
유형 |
내용 |
사례 |
참 오라클 |
- 모든 테스트 케이스 입력 값의 기대한 결과값에 대한 확인 - 가능한 모든 전수 테스트 가능 |
|
샘플링 오라클 |
- 특정 입력 값들에 대해서만 원하는 결과를 제공해주는 오라클 - 전수 테스트 불가능한 경우 사용 - 경계값, 구간별 예상 값 결과 작성 사용 |
|
휴리스틱 오라클 |
- 샘플링 오라클의 단점 개선을 위해 특정 몇몇 입력은 샘플링 오라클과 같은 결과 제공, 나머지 입력은 휴리스틱(확률 과 직관)처리 - 실험 결과나 수치데이터 처리시 사용 |
|
일관성검사 오라클 |
- 이전 수행 결과와 현재 수행 결과가 동일한지 검증 - 회귀 테스트에서 수정 전/후의 결과 확인 또는 비교 시 사용 |
상용테스트 자동화 도구에서 사용 |
나. 테스트 오라클의 장단점
구분 |
참 오라클 |
샘플링 오라클 |
휴리스틱 오라클 |
테스트 정확도 |
모든 테스트 케이스에 대한 정확도 검증 |
일부에 대해서만 테스트 정확도 검증 |
참 오라클과 샘플링 오라클의 중간 정도 정확도 |
장점 |
모든 케이스에 대한 테스트 오라클 적용 가능 |
테스트 오라클 작성이 쉬움 |
샘플링보다는 상대적으로 테스트 케이스 검증 수 많음 |
단점 |
오라클 개발 비용이 많이 들어감 |
샘플링 이외의 테스트는 참/거짓 검증이 안됨 |
값은 조건 값 범위 내의 테스트 참/거짓 검증은 안됨 |
'IT기술노트 > 소프트웨어공학' 카테고리의 다른 글
회귀테스트(Regression Test) (0) | 2021.02.02 |
---|---|
소스코드 커버리지(Source Code Coverage) (0) | 2021.02.02 |
구조기반 테스트(Structure-based Test) (0) | 2021.02.02 |
명세기반 테스트(Specification-based Test) (0) | 2021.02.02 |
테스트 베드(Test Bed) (0) | 2021.02.02 |
테스트 케이스(Test Case) (0) | 2021.02.02 |
소프트웨어 테스트 프로세스 (0) | 2021.02.02 |
소프트웨어 테스트(Software Test) (0) | 2021.02.02 |
댓글