사용자의 요구사항을 정확하게 준수했는지 확인하기 위해 설계된 테스트 항목(입력 값, 실행 조건, 기대 결과)에 대한 명세서
명세 기반 테스트의 설계 산출물
테스트 케이스를 적용하는 순서에 따라 여러 테스트 케이스들을 묶은 집합
테스트 결과가 올바른지 판단하기 위해 사전에 정의된 참 값을 대입하여 비교하는 기법 및 활동
결과를 판단하기 위해 테스트 케이스에 대한 예상 결과를 계산하거나 확인함
특징
1) 제한된 검증: 모든 테스트 케이스에 적용할 수 없음
2) 수학적 기법: 값을 수학적 기법을 이요하여 구할 수 있음
3) 자동화 기능: 프로그램의 실행, 결과 비교, 커버리지 측정 등을 자동화할 수 있음
참(True) 오라클
: 모든 테스트 케이스의 입력 값에 대해 기대하는 결과 제공
: 발생된 모든 오류 검출 가능
: 주로 항공기, 은행, 발전소 소프트웨어 등 미션 크리티컬한 업무에 사용됨
샘플링(Sampling) 오라클
: 특정한 몇몇 테스트 케이스의 입력 값들에 대해서만 기대하는 결과 제공
: 일반적인 업무, 게임, 오락 등에 사용됨
추정(Heuristic) 오라클
: 샘플링 오라클을 개선한 오라클
: 특정 테스트 케이스의 입력 값에 대해 기대하는 결과 제공
: 나머지 입력 값들에 대해서 추정으로 처리
: 일반적인 업무, 게임, 오락 등에 사용됨
일관성 검사(Consistent) 오라클
: 변경이 있을 때 수행 전과 후의 결과값이 동일한지 확인