소프트웨어 테스트 개요

화이트박스 테스트

PW(Profound World) 2020. 1. 5. 15:19

▶개념

화이트박스 테스트는 투명한 상자 안을 들여다 보면서 테스트 한다는 의미를 가지고 있다. 블랙박스 테스트와 반대되는 개념이다. 블랙박스가 기능 명세서에 정의한 입력과 출력 값에 의해 올바르게 작동을 하고 있는지 확인하는 방법이라면, 화이트박스 테스트는 소프트웨어(프로그램/함수)를 구현하고 있는 있는 소스코드의 알고리즘과 처리 절차 등을 고려하여 테스트하는 방법이다.

 

그림

 

화이트박스 테스트

 

설명

예를 들면, 블랙박스 테스트의 경우 6, 8, + 기호가 입력될 경우 그 결과가 14가 나오면 더하기 연산에 대한 기능은 잘 구현되었다고 간주한다. 하지만 화이트박스의 경우 

 

효과/효율/효용

블랙박스보다 더 철저하고 면밀한 테스트를 하고자 할 때 수행한다. 하지만 대부분 처리 절차와 알고리즘이 복잡한 경우 수동으로 할 수 있는 한계가 있기 때문에 자동화 도구를 이용한다. 소스코드를 입력 받아 자동으로 해석하고 수행 경로를 추출한 다음 그 경로 대로 수행할 수 있도록 테스트 데이터를 생성하는 경우이다. 최근 화이트박스 테스트 자동화 도구는 소스코드를 실행 가능한 프로그램으로 빌드하는 과정에서 수행 알고리즘과 조건 등을 모든 테스트 가능한 테스트케이스를 자동으로 생성할 뿐 아니라 비정상적인 명령이나 입력의 경우도 테스트할 수 있도록 비정상 테스트케이스도 생성하고, 자동으로 테스트케이스를 실행하기도 한다. 

 

기타