Software Quality Engineering/ⓣⓔⓢⓣ
[테스트] 테스트 커버리지
뚱땡이 우주인
2017. 11. 21. 15:15
테스트 커버리지는 테스트 대상의 전체 버뮈에서 테스트를 수행한 범위 이다.
테스트 커버리지에서 분수의 분모 수를 결정하는 것이 가장 중요한데, 테스트의 범위를 무엇으로 측정할 것인가에 다른다.
예를들어,
1) UI 의 경우 전체 화면 수를 모수로 사용
2) 시스템이나 인수 테스트의 겨우 기능이나 컴포넌트를 모수로 함
라인 커버리지
- 테스트 대상 시스템의 전체 클래스 수
- 테스트 대상 시스템의 전체 메서드 수
- 테스트 대상 시스템의 전체 소스 코드 줄 수
특히 전체 소스 코드 라인 수 대비, 테스트 시나리오가 거쳐 가는 소스 코드의 라인 수를 측정 한 것을 라인 커버리지 라고 하는데 목표를 80%로 잡는데 이건 상당히 잘 조직화된 개발 및 테스팅 조직이 있을 경우에나 가능하다.
전체 시스템 중 40%를 난도가 높거나 중요한 시스템 기준으로 산정하여 이 시스템에 대해서는 80%를 적용 이외에는 60% 정도의 라인 커버리지를 유지하는 것이 좋다.
브랜치 커버리지
if 나 witch 같은 분기 조건문에 대해서 테스트가 얼마나 커버하고 있느냐를 나타내는 수치