블랙박스 테스트

블랙박스 테스트

소프트웨어 인터페이스에서 실시되는 검사로, 소프트웨어가 수행할 기능을 중심으로 기능이 완전히 작동되는 것을 입증하는 검사

화이트박스 테스트가 소프트웨어의 특정 로직이 제대로 동작하는지 보기 위한 개념이라면 블랙박스 테스트는 그보다 더 거시적으로 스프트웨어가 원하는 방향대로 잘 동작하는지 테스트하는 개념이다.

주로 Development 단계에서 개발자들이 수행하는 테스트가 화이트박스 테스트, 이후 QA단계에서 테스트 전담자(팀)이 수행하는 테스트가 화이트박스 테스트이다.

즉,

소프트웨어의 내부 구조나 작동 원리를 모르는 상태에서 동작을 검사하는 방식이다.

사용자가 직접 특정 App이나 Device를 가지고 이리저리 작동시키는 과정이 블랙박스 테스트와 동일하다.

즉, 내부에 어떤 내용이 있는지 하나도 모른 채, 내가 원하는 기능이 예측한대로 정상 동작 하는지를 확인하는 방식이다.

즉, 사용자가 소프트웨어 또는 제품에 대한 요구사항과 결과물이 일치하는 지 확인하기 위한 테스트 기법

(사용자 관점의 테스트 방법)

종류는 아래와 같다.

 – 동치 분할 검사(Equivalence Partitioning Test)

입력 자료에 초점을 맞춰 테스트케이스를 만드는 방법으로, 프로그램 로직의 조건에 타당한 입력자료와 타당하지 않은 입력자료를 균등하게 배분하여 검사한다. 

 – 경게값 분석(Boundary Value Analysis)

입력 조건의 중간값 보다 경계값에서 오류가 발생될 확률이 높다는 점을 이용하여 입력 조건을 경계값으로 설정한다. 예를 들면 5천만원 이상 1억원 미만일때 발현되어야 하는 조건이 있다면 7000만원과 같은 애매한 중간값 보다는 딱 5천만원일때 발현이 되는지, 딱 1억원일 때 발현이 안되는지 확인하는 것이다.

 – 원인-효과 그래프 검사(Cause-effect Graphing Testing)

입력데이터 간의 관계, 출력에 미치는 영향의 분석을 위해 그래프를 그려가서 테스트 하는 방법. 흔히 알고 있는 x-y축으로 나뉜 그래프가 아니라 흐름도와 흡사한 그래프이다. 이미지를 참고(클릭)

 – 오류 예측 검사(Fault Based Testing = Mutation Testing)

개발자가 프로그램을 다 만들고 나서 번뜩 이런 생각이 떠오를 수 있다. “이렇게 하면 오류가 나지 않을까?” 개발자 뿐만 아니라 테스트 전담팀에서도 이런 연륜이 쌓여 있다. 경계값 오차나, 널처리, 비정상적인 구동 등 테스터의 감각이나 경험, 지식을 통해 에러케이스를 예측하여 테스트 하는 기법이다.

 – 비교검사(Comparison Testing)

주로 프로그램이 그대로 이행되거나, 일부 업데이트 되는 경우 등 완전 새로운 프로그램이 만들어지기 보다는 원본 프로그램이 있는 경우에 활용될수 있는 검사법이다. 테스트대상 프로그램과 비교대상 프로그램에 같은 입력값을 넣어 데이터를 비교해 본다. 출력값이 서로 다르게 나와야 하는 상황에 다르게 나오는지, 같게 나와야 하는 상황에서 같게 나오는지 테스트한다.

Start typing and press Enter to search

Shopping Cart