카테고리 없음
[CS] Statement Coverage 문장 커버리지
bay07
2025. 4. 21. 18:50
**알고리즘 순서도에서 문장 커버리지(statement coverage)**는 코드의 각 문장이 최소 한 번씩 실행되었는지를 확인하는 테스트 커버리지 기준이다.
순서도에서 문장 커버리지를 표현하는 방법:
1. 순서도의 각 블록(문장 또는 명령문)을 식별
예: 시작 → 입력 a, b → 비교 → 출력 등
2. 모든 문장을 최소 한 번 실행하는 경로를 설계
테스트 케이스를 만들 때, 순서도의 모든 블록을 지나도록 설정함
3. 각 테스트 케이스가 어떤 블록을 지나가는지 표시
블록 옆에 체크 표시하거나 색을 칠해서 어떤 경로를 따라갔는지 나타냄
---
예시 순서도 (간단한 if 문)
Start
|
입력 a
|
a > 0?
/ \
Y N
| |
출력 양수 출력 음수
\ /
End
문장 커버리지를 위한 테스트 케이스:
a = 5 → "a > 0?" → Y → "출력 양수"
a = -3 → "a > 0?" → N → "출력 음수"
이 두 케이스로 모든 문장을 실행해봤으므로 문장 커버리지는 100% 달성!
---
핵심 포인트:
순서도에서 각 명령문을 지나가게 하는 테스트 케이스를 설계하는 게 핵심
단순히 if 문의 분기를 나누는 것만이 아니라, 실제 모든 블록을 최소 1회 실행했는지 확인하는 것이 목적이다