토요일, 3월 18, 2006

화이트박스 테스트의 정보수준은..어디까지 일까..

소프트웨어를 테스트 한다면..
테스트팀은 과연 어디까지의 정보가 필요할까...

일반적으로 사람들이 널리 알고있는..
"베타테스트"라는 개념을 들어 봤을것이다..
이것은 보통 업계사람들이 이야기하는..
"블랙박스테스트"의 한 종류인데....
뜻을 풀이하자면 어떻게 동작하는지
전혀 모르는 상태에서 소프트웨어를 동작
또는 게임을 플레이 하다가 괜시리....
의심스러운 부분이 나오면 제작자에게 넌지시
알려주는 형태의 테스트이다....

내가 일하는 개발사에서 하는 테스트는..
베타테스트와는 좀 다른 경향을 띈다..
블랙박스 테스트에 비해서 굉장히 많은 양의 정보
를 가지고 테스트를 하는데..
이런테스트를 "화이트박스테스트"라고 한다
하지만 약간은..미심쩍은 부분이 있기는 하다...
보통 화이트박스테스트라고 하면..
프로그램이 어떻게 동작하는지 아는 상태에서
테스트를 진행하는 것이다...그런데..
문제는 어떻게 동작하는지 안다는 것이...
2가지로 분류해서 생각을 해보아야 할 것이 있다..

하나는 단순히 어떻게 동작 하는지 안다는것이고...

다른하나는 동작을 구현하기 위해서 프로그램
내부적으로 여러 함수들이 어떻게 움직이는지
아느냐......는 것이다...

쉽게 이야기 하자면 계산기를 테스트 한다고 했을때
이계산기는 1+1= 2를 산출하는 기능이 있다는걸
알고 테스트 하는것과..
1+1=2라는 것을 산출하기위해 계산기에 프로그램
된 함수들이 어떤식으로 +연산을 진행하는지
알고 테스트 하는 것의 차이라고 보면 될것이다.

쓸때없는 고민이라고 말할 수도 있겠지만...
난 사실..이 고민때문에...잠을 못잔 적도 있었다...

지금은 그렇다...게임이나 소프트웨어가..
어떠한 동작을 하는지 아는 수준이..
화이트박스테스트라고..생각한다....

물론...프로그래머 입장에서는 약간 다를수도
있겠지만..말이다...

댓글 1개:

익명 :

구현되지 않은 부분까지 포함된, 테스트에 필요한 모든 것 아닐까요.
보통 화이트박스 테스트라는게 개발진 자체에서 이뤄지잖아요. 문제는 제작 단계의 초반부터 참여하지 않았던 사람이 이런 테스트를 하려면 적응기간이 필요하다는 거겠죠.