일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 테스팅
- TestCase
- istqb fl
- Test
- 게임 qa
- 모바일앱 QA
- QA
- FL
- qa 자격증
- 자격증
- 실라버스
- ISTQB
- 폴라리스오피스
- ctfl
- 테스트케이스
- Polaris Office
- QA자격증
- 테스트 외주
- qa 아웃소싱
- App QA
- 테스트
- 외주 테스트
- 테스트 아웃소싱
- qa테스트
- istqb dump
- testing
- mobile QA
- 검증
- istqb 기출문제
- Office test
- Today
- Total
QA Outsourcing & Consulting
[ISTQB] FL 8 <Statement coverage, Branch coverage> 본문
[ISTQB] FL 8 <Statement coverage, Branch coverage>
인프라웨어테크놀러지(IT) 2019. 1. 17. 10:25Q. Given the following code, which is true about the minimum number of test cases required for full statement and branch coverage?
Read P
Read Q
IF P+Q > 100 THEN
Print “Large”
ENDIF
If P > 50 THEN
Print “P Large”
ENDIF
A) 1 test for statement coverage, 3 for branch coverage
B) 1 test for statement coverage, 2 for branch coverage
C) 1 test for statement coverage, 1 for branch coverage
D) 2 tests for statement coverage, 3 for branch coverage
E) 2 tests for statement coverage, 2 for branch coverage
<해설>
FL 시험을 치루면 높은 확률로 이런 계산 문제는 1~2문제씩 나옵니다.
하지만 실라버스에는 무슨무슨 커버리지에 대한 적용처나 특징만 기술되어 있고, 실제 문제를 푸는 방법은 전혀 설명되어 있지 않습니다.
따라서 별도로 공부해두지 않으면 점수도 높은 이런 유형의 문제는 틀리게 되어 있으며,
반대로 푸는 방법만 알면 쉽게 맞출 수 있습니다.
문제를 다 읽을 필요 없이 코드가 있고 statement coverage랑 branch coverage단어가 있다면, 이 두 개의 갯수를 찾으라는 겁니다.
먼저, statement coverage를 계산하려면 먼저 어떻게 하면 주어진 코드를 다 지나갈 수 있는지 그 경로를 생각해야 합니다.
머리 속으로만 생각하는 건 어려우니 위 코드를 흐름도로 그려 이해하는 것이 빠릅니다.
흐름도는 위와 같이 됩니다. 숫자는 코드, 알파벳은 경로가 됩니다.
코드가 한 번씩은 다 지나가게 하려면 1A-2C-3D-E-4G-5H 이렇게 지나가면 된다는 것을 알 수 있습니다.
즉, statement coverage는 한 번의 경로만으로 1,2,3,4,5 노드를 모두 다 지나갈 수 있어 statement coverage는 이 케이스에서는 1입니다.
자 그럼 branch coverage는 어떻게 되는가…
알파벳으로 쓴 경로, 원래 영어에서는 이 경우 엣지라고 하는데 (경로path와 구분하기 위해) 이 엣지를 어떻게 하면 다 커버 가능한지 최소 개수를 구해서 쓰면 됩니다.
위에서 우선 하나 경로를 찾았습니다.
1A-2C-3D-E-4G-5H
그런데 이 경로에서 커버하지 못하는 엣지가 있습니다.
B, F는 아직 커버하지 못했죠.
그래서 이 B, F를 커버하려면 다시 하나 더 경로를 만들어야 합니다.
그럼 어떻게 경로를 만들면 되는가?
1A-2B-E-4F 이렇게 하면 되겠네요.
따라서 statement coverage는 1, branch coverage 2가 됩니다.
A. B
'IT Trend > ISTQB FL' 카테고리의 다른 글
[ISTQB] FL 10 <Test planning, Test Tool> (0) | 2019.01.24 |
---|---|
[ISTQB] FL 9 <Path Coverage, Branch coverage, Decision Coverage> (0) | 2019.01.22 |
[ISTQB] FL 7 <Integration testing> (0) | 2019.01.15 |
[ISTQB] FL 6 <Exit criteria, Non-functional system testing> (0) | 2019.01.10 |
[ISTQB] FL 5 <Regression testing, IEEE 829> (0) | 2019.01.08 |