본문 바로가기
IT기술노트/소프트웨어공학

테스트 오라클(Test Oracle)

by 비트코기 2021. 2. 2.

결과값 정상/비정상 기준


I. 미리 정의된 참값과 결과 비교, 테스트 오라클의 개요

가. 테스트 오라클(Test Oracle)의 정의

   - 테스트 수행 결과가 참, 거짓인지 판단하기 위해 미리 정의된 참을 대입하여 실제 결과와 비교하는 기법

나. 테스트 오라클의 특징

특징

설명

제한된 검증

모든 테스트 항목 적용 불가

수학적 기법

테스트 수행 시 수학적 기법을 이용, 오라클 값을 구할 수 있음

자동화 기능

테스트 대상 프로그램의 실행, 결과 비교, 커버리지 측정


II. 테스트 오라클의 유형 및 장단점

가. 테스트 오라클의 유형

유형

내용

사례

참 오라클

- 모든 테스트 케이스 입력 값의 기대한 결과값에 대한 확인

- 가능한 모든 전수 테스트 가능

 

샘플링

오라클

- 특정 입력 값들에 대해서만 원하는 결과를 제공해주는 오라클

- 전수 테스트 불가능한 경우 사용

- 경계값, 구간별 예상 값 결과 작성 사용

 

휴리스틱

오라클

- 샘플링 오라클의 단점 개선을 위해 특정 몇몇 입력은 샘플링 오라클과 같은 결과 제공, 나머지 입력은 휴리스틱(확률 과 직관)처리

- 실험 결과나 수치데이터 처리시 사용

 

일관성검사 오라클

- 이전 수행 결과와 현재 수행 결과가 동일한지 검증

- 회귀 테스트에서 수정 전/후의 결과 확인 또는 비교 시 사용

상용테스트 자동화 도구에서 사용

나. 테스트 오라클의 장단점

구분

참 오라클

샘플링 오라클

휴리스틱 오라클

테스트

정확도

모든 테스트 케이스에 대한 정확도 검증

일부에 대해서만 테스트 정확도 검증

참 오라클과 샘플링 오라클의 중간 정도 정확도

장점

모든 케이스에 대한 테스트 오라클 적용 가능

테스트 오라클 작성이 쉬움

샘플링보다는 상대적으로 테스트 케이스 검증 수 많음

단점

오라클 개발 비용이 많이 들어감

샘플링 이외의 테스트는 참/거짓 검증이 안됨

값은 조건 값 범위 내의 테스트 참/거짓 검증은 안됨

 

 

반응형

댓글