화이트/블랙 박스 테스트(White/Black Box Test)
1. White Box Test
Wiki
White-box testing (also known as clear box testing, glass box testing, transparent box testing, and structural testing) is a method of software testing that tests internal structures or workings of an application
화이트 박스 테스트(white box test)는 내부 구조나 애플리케이션 동작 방식을 테스트한다. 다음과 같이 정리할 수 있다.
- 모듈의 정상적인 작동을 코드 레벨에서 확인한다.
- 컴파일된 원시 코드의 문장을 여러 번 수행한다.
- 코드의 논리적인 수행 경로를 확인하기 때문에 테스트 커버리지(coverage) 측정이 가능하다.
- 테스트를 수행하기 위해 내부적으로 소프트웨어와 코드가 어떻게 동작하는지 이해하고 있어야 한다.
화이트 박스 테스트에는 다음과 같은 종류가 있다.
- 기초 경로 검사(구조 검사, Basic Path Testing)
- 수행 가능한 모든 경로를 검사한다.
- 루프 검사(반복문 검사, Loop Testing)
- 프로그램의 반복 구조에 초점을 맞추어 검사한다.
- 데이터 흐름 검사(Data Flow Testing)
- 프로그램에서 변수의 정의와 변수 사용 위치에 초점을 맞추어 검사한다.
- 조건 검사(Condition Testing)
- 프로그램의 조건문에 초점을 맞추어 검사한다.
2. Black Box Test
Wiki
Black-box testing is a method of software testing that examines the functionality of an application without peering into its internal structures or workings.
블랙 박스 테스트(black box test)는 내부 구조나 동작 방식을 확인하지 않고 애플리케이션의 기능을 테스트한다. 다음과 같이 정리할 수 있다.
- 요구사항 명세서를 보면서 구현된 기능을 테스트한다.
- 테스트를 진행하는 사람은 모듈 내부에서 어떤 동작이 있었는지 신경 쓰지 않는다.
- 입력은 적절한지, 출력은 정확한지 확인할 수 있다.
- 제품의 각 기능이 정상적으로 작동하는지 입증하는 검사이다.
블랙 박스 테스트에는 다음과 같은 종류가 있다.
- 균등 분할(동등 분할, Equivalence Partitioning)
- 프로그램의 입력 데이터를 여러 분류로 나누어 검사한다.
- 한계값 분석(경계값 분석, Boundary Value analysis)
- 입력값의 경계값을 중심으로 예외 발생 여부를 검사한다.
- 원인-결과 그래프(Cause-effect Graphing)
- 입력 데이터 간의 관계와 출력에 미치는 영향을 분석한 그래프를 이용한다.
- 오류 예측(Error Guessing)
- 테스터의 감각이나 경험, 지식을 통해 에러 케이스를 예측한다.
- 비교 검사(Comparison Testing)
- 테스트 대상과 비교 대상 프로그램에 같은 입력값을 넣어 데이터를 비교한다.
3. 차이점 요약
두 종류의 테스트에 대한 내용을 다음과 같이 요약할 수 있다.
댓글남기기