화이트박스 테스트
- 논리적인 모든 경로를 테스트한다. 이 테스트의 이해를 위해 논리 흐름도(Logic-Flow Diagram)를 이용할 수 있다.
- 테스트 데이터를 이용해 실제 프로그램을 실행함으로써 오류를 찾는 동적 테스트(Dynamic Test)에 해당한다.
- 테스트 데이터를 정하기 위해 검증기준(Test Coverage)을 정한다.
- 프로그램의 구조를 고려한다.
- 테스트 케이스 : 시험 조건, 테스트 데이터, 예상 결과를 포함한다.
- Source Code의 모든 문장을 한 번 이상 수행함으로써 진행 된다.
화이트박스 테스트 종류
- 기초 경로 검사(Base Path Testing)
- 제어 구조 검사(Control Structure Testing)
- 조건 검사(Condition Testing) : 프로그램 모듈 내에 있는 논리적 조건을 테스트하는 테스트 케이스 설계 기법
- 루프 검사(Loop Testing) : 프로그램의 반복(Loop) 구조에 초점을 맞춰 실시하는 테스트 케이스 설계 기법
- 데이터 흐름 검사(Data Flow Testing) : 프로그램에서 변수의 정의와 변수 사용의 위치에 초점을 맞춰 실시하는 테스트 케이스 설계 기법
블랙박스 테스트
각 기능이 완전히 작동되는 것을 입증하는 테스트로, 기능 테스트이다.
- 인터페이스에서 실시되는 테스트이다.
- 프로그램의 구조를 고려하지 않는다.
- 부정확하거나 누락된 기능, 인터페이스 오류, 자료 구조나 외부 데이터베이스 접근에 따른 오류, 행위나 성능 오류, 초기화와 종료 오류 등을 발견하기 위해 사용되며, 테스트 과정의 후반부에 적용된다.