반응형
제목: 소프트웨어 테스팅에서의 테스트 커버리지(Test Coverage in Software Testing)
저자: softwaretestingclass.com
문서유형: 웹문서
출처: http://www.softwaretestingclass.com/test-coverage-in-software-testing/
소프트웨어 테스팅에서 테스트 커버지리란?
- 한 집합의 테스트 케이스들에 의해 수행된 테스팅의 양(즉, 하나의 테스트 스위트를 돌렸을 때 애플리케이션 프로그램의 어떤 부분들 실행되었는지)
- 우리 테스트 케이스가 실제로 애플리케이션 코드를 커버하고 있는지 그리고 이 테스트 케이스들을 돌렸을 때 얼마나 많은 코드가 실행되는지를 결정하는 기법
- 우리가 애플리케이션에서 뭔가를 집계할 수 있고 또한 테스트 케이스가 애플리케이션의 이것을 커버하는지 알 수 있는 경우, 커버리지를 측정한다고 말할 수 있음(즉, 커버리지 항목들을 집계할 수 있고 또한 어떤 항목이 테스트에 의해 커버되었는지를 알 수 있어야 함)
테스트 커버리지를 어떻게 측정할 수 있는가?
테스트 커버리지가 다음 세 가지에 의해서 측정될 수 있음:
- 요구사항을 테스트 케이스로 매핑함으로써
- 테스트 케이스 상태에 의해서
- 코드 커버리지 분석에 의해서
테스트 커버리지 분석을 하는 이유
① 명세된 요구사항에서 테스트 시나리오와 케이스에 의해 커버되지 않는 부분을 찾기 위해서
② 테스트 커버리지를 결정함으로써 우리의 테스트 커버리지를 높이기 위한 더 많은 테스트 케이스들을 생성할 수 있음
③ 테스트 커버리지를 수행함으로써 얼마나 많은 테스팅이 커버되는지를 측정할 수 있음(이는 애플리케이션의 품질에 대한 간접적 체크를 의미함)
④ 실행의 의미가 없는(따라서 생략될 수 있는) 일부 쓸모 없는 테스트 케이스를 식별할 수 있음
⑤ 리스크 기반 테스팅 접근방법을 관리함으로써 테스팅이 원할해짐
⑥ 요구사항과 테스트 케이스 간의 추적성(Traceability)이 달성될 수 있음
⑦ 적절한 테스트 커버리지를 갖게 되면 영향 분석(Impact analysis) 및 변경 추적(change tracking)을 할 수 있게됨
테스트 커버리지 분석을 어떻게 수행할 수 있는가?
- 테스트 커버리지가 정적 테스팅 기법(예, 동료 검토, 코드 인스펙션, 코드 워크쓰루)에 의해 실현될 수 있다.
- 임의 결함(ad-hoc defects)을 실행가능한 테스트 케이스로 전환하고 테스트 커버리지를 분석할 수 있다.
- 단위 수준에서 테스트 커버리지를 달성하기 위해 코드 수준 도구와 자동화를 사용할 수 있다
- 요구사항, 결함, 테스트 케이스 간의 추적성을 확립하는 기능적 테스트 커버리지를 수행하기 위해 테스트 관리 도구를 사용할 수 있다.
- 테스트 커버리지를 달성하기 위해 양방향 추적 매트릭스를 사용할 수 있다.
반응형
'테스팅 관리 및 통제 > 커버리지 관리' 카테고리의 다른 글
현업에서 적용하는 코드 커버리지 예 – 마이크로소프트 (0) | 2021.08.24 |
---|---|
책 요약 - 테스트 완료/중단 기준(TEST COMPLETION CRITERIA) by Myers (0) | 2021.08.10 |
페이퍼요약 - 테스팅 커버리지 측정으로 소프트웨어 품질 달성하기 by Horgan (0) | 2019.11.04 |
문서요약 - 소프트웨어 테스팅 추적 매트릭스에 포함할 것들 by Sachdeva (0) | 2019.10.09 |
문서요약 - 추적성 매트릭스 by Karthikeyan (0) | 2019.09.11 |