리스크 기반 테스팅

리스크 기반 테스팅(Risk Based Testing)은 테스트 대상에 비해서 테스트 자원이 부족한 경우, 우선순위를 나눠서 테스트 자원을 효율적으로 분배하기 위한 전략으로 리스크를 정의하고, 정의된 리스크를 분석하고, 분석된 리스크에 대하여 회피 전략을 세우고, 전략에 따라 테스트를 수행하는 과정을 통하여 리스크 기반 테스팅을 할 수 있다.

RBT에서 리스크는 "리스크 발생 가능성" × "발생했을 때 영향력"으로 정의한다.

리스크의 분류 
리스크를 바라보는 관점에 따라서 다음과 같이 나눌 수 있다.
 제품에 대한 리스크: 제품의 모듈, 코드, 개발자의 능력 등에 대한 리스크
 프로젝트에 대한 리스크: 제품을 둘러싸고 있는 이해관계자, 조직같은 외부환경에대한 리스크

프로세스 
 리스크 식별: 프로젝트나 제품에 대한 리스크 요소를 식별함
 리스크 분석: 식별된 요소를 분석하고, 리스크 맵을 작성
 리스크 회피 전략: 리스크 맵 분류를 통한 회피 전략을 마련함
 테스트 수행: 회피 전략에 맞춰 수행
 평가: 수행이 제대로 되었는지 확인

리스크 식별 
 리스크 관리계획 프로세스를 통해 체계적인 방법을 수립한 후, 프로젝트에 영향을 줄 수 있는 리스크를 찾아내고 그 리스크의 특성을 리스크 등록부(Risk Register)로 문서화하는 프로세스이다.
 한 번에 모든 프로젝트 리스크를 식별하는 것은 어렵기 때문에 반복하면서 주기적으로 리스크를 계속 식별해야 한다.

리스크 맵 
리스크 맵은 리스크 발생 가능성을 y축으로 발생했을 때의 영향력을 x축으로 잡은 2차원 점 분포 그래프의 형태로 나타나고 각 사분면마다 리스크의 정도를 구분해서 다른 전략을 세울 수 있다.

소프트웨어 테스트