TEST의 종류
(1) Sanity Testing : 새로운 버전이 주요 테스트를 수행하기 적합한지를 판단하기 위한 테스팅. 만약 사용 초기의 Crash 등으로 프로그램이 사용불가능하다면 시스템은 테스팅이 불가능하다. 즉, QA를 위한 테스트라 할 수 있다.
(2) BlackBox Testing : 내부설계 및 구현은 고려하지 않고 요구사항과 기능성에만 기반한 테스팅을 수행한다.
(3) WhiteBox Testing : 글래스박스 테스팅이라고도 하며, 내부로직에 대한 지식을 기반으로 코드구문, 분기, 조건 등에 대한 커버리지를 포함한다.
(4) Unit Testing : 개발자에 의해 수행되며 소프트웨어 모듈 각각에 대한 세부적 테스팅
(5) End to End Testing : 주로 네트워크, DB 연동, 시스템간 커넥션에 대한 테스팅이다.
(6) Load Testing : 부하가 걸린 상황에서 시스템의 동작을 점검한다.
(7) Stress Testing : 허용 범위를 초과하여 한계치를 측정하는 테스팅이다.
(8) Alpha Testing : 개발 부서 내에서 만든 가상환경에서의 테스팅
(9) Beta Testing : 상용화 릴리즈 이전 end user에 의해 완료되는 테스팅
(10) Recovery Testing : 시스템의 회복을 테스팅한다.
(11) Smoke Testing : Sanity Test와 유사하게 테스트가 가능한지 여부를 판단한다. (연기가 나는지를 판단하는 작업) 여러 개의 스모크 테스트를 스위트라고 한다.
* Sanity Test와 Smoke Test 의 차이는 기능 검사에 있다. Sanity Test가 새로 테스트 항목에 추가된 추가된 기능 / 수정된 버그 에 초점을 둔다면 Smoke Test 는 프로그램의 핵심적인 부분을 같이 검사한다. (즉, 새로운 기능추가가 기존의 핵심 기능에 영향을 안미치지는지 테스트 한다.)
또한, 같은 QA 이전의 테스팅이지만 주로 Smoke Test 는 개발팀 내에서 직접, Sanity Test 는 개발팀에서 기능 검사만 하고, QA팀으로 넘기는 경우가 많다.