구조기반테스트 화이트박스 테스트 = 구조기반 테스트
 
토픽 이름 () 구조기반 테스트(Structure-based techniques)
분류 SW > Test > 구조기반 테스트
키워드(암기) 제어구조시험, 루프시험, Coverage, MC/DC
암기법(해당경우) 화제루

 

기출문제

번호 문제 회차
1 소프트웨어 품질의 테스트 방법인 화이트박스 및 블랙박스 테스트의 4가지 검증기준(coverage) 예를 들어 설명하고, 테스트 자동화 도구의 유형에 대하여 설명하시오. 114.관리.3
2 블랙박스 테스트 (Black Box Test) 화이트박스 테스트 (White Box Test) 비교 설명하시오. 84.관리.1
3 소프트웨어의 명세 기반 기법 (Specification Based Technique) 테스트와 구조 기반 기법 (Structure Based Technique) 테스트 방법을 나열하고 설명하시오 83.관리.2
4 소프트웨어 Testing 관련하여 다음 사항을 설명하시오
1)검증(verification) 확인(Validation) 비교 설명
2)블랙박스 시험과 화이트박스 시험의 비교 설명
3)화이트박스 시험의 필요성
72.응용.2

 

. 프로그램 내부 로직 분석을 통한 테스트 기법, 구조기반 테스트의 개요

  1. 구조기반 테스트(Structure-based Test) 정의

- 테스트 프로그램 내부 구조를 기반으로 특정 커버리지(Coverage)를 달성하기 위한 테스트 설계 및

케이스를 도출하기 위한 테스트 기법

. 구조기반 테스트의 특징

특징 설명
White Box Test 프로그램 내부 구조 및 복잡도를 검증, 테스트
Logic Driven 코드 구조의 효율성 및 오류사항 발견

 

II. 구조기반 테스트의 개념도 기법

. 구조기반 테스트의 개념도

- 내부 구조 복잡도를 검증하고 테스트하기 위한 White Box Test

 

 

. 구조기반 테스트의 기법

기법 설명 사례
제어구조 시험
(Control Structure Testing)
- McCabe 의해 제안된 대표적 White Box Test 기법
- 프로그램의 처리 흐름을 제어하는 방법 수행 제어를 위해 사용되는 문장의 구조
- 순차형(순차 구조, Sequence)
- 선택형(분기구조, If Then Else)
- 반복형(반복구조, Do While)
루프 시험
(Loop Testing)
- 프로그램 루프 구조에 국한해서 실시하는 기법
- 루프 시험의 대상 결함 : 초기화 결함, 인덱싱 증가의 결함, 루프의 경계선에서 나타나는 경계 오류
- 루프의 유형 : 단순루프, 중첩루프, 연결루프, 비구조적 루프
- for, while
- go to

 

 

III. 구조기반 테스트와 명세기반 테스트의 비교

구분 구조기반 테스트 명세기반 테스트
개념도
정의 프로그램 내부 로직을 참조하며
모든 경로를 테스트
외부 명세로부터 직접 테스트
Data, I/O 위주 테스트
특징 - 구조테스트
- Logic Driven 테스트
- 모듈 테스트
- 기능테스트
- Data Driven 테스트
- I/O 테스트
적용 단위테스트 위주 대부분의 테스트에 적용
V&V 하위 레벨 테스트 (시험 환경) 상위 레벨 테스트 (사용자 환경)
점검대상 Loop, Decision 결함, 비수행 구문 시작/종료/인터페이스 결함
기법 Loop, 제어구조 테스트 동등 분할, 경계 값 분석, Cause Effect 그래프, 오류 예측 기법
활용분야 알파 테스트 베타 테스트

 

IV. 테스트 커버리지 관계도 및 유형

. 테스트 커버리지 관계도

- 구문, 결정, 조건, 조건/결정, 변경 조건/결정, 다중 조건 커버리지 관계도 설명

. 테스트 커버리지 유형

테스트 유형 설명 사례
구문 커버리지
(Statement Coverage)
- 프로그램을 구성하는 모든 구문들이 최소한 한번은 실행될 수 있는 입력 데이터를 데스트 데이터로 선정
- 프로그램 모든 구문의 테스트를 보장
- 소스코드
If(a>0 or b>0)
call join
- 테스트케이스
a = 3, b = 4
결정 커버리지
(Decision Coverage)
- 프로그램 내의 전체 결정문이 적어도 한번은 참과 거짓의 결과를 수행하는 테스트 케이스 생성
- 모든 분기문을 테스트 하는 방법
조건 커버리지
(Condition Coverage)
- 결정 명령문 내의 조건이 적어도 번은 참과 거짓의 결과가 되도록 수행하는 테스트 케이스
- 모든 조건을 커버하는 방법
조건/결정 커버리지
(Condition/Decision Coverage)
- 전체 조건식 뿐만 아니라 개별 조건식도 한번, 거짓 한번 결과가 되도록 수행하는 테스트 케이스
변경조건/결정 커버리지
(MC/DC)
- 개별 조건식이 다른 개별 조건식에 영향을 받지 않고 전체
조건식에 독립적으로 영향을 주도록 하는 테스트 케이스
다중조건/결정 커버리지(Multiple Condition Coverage) - 결정 포인트 내에 있는 모든 개별식 조건의 모든 조합을 고려한 커버리지
반응형

'정보관리기술사 > 소프트웨어공학' 카테고리의 다른 글

Embedded System Test  (1) 2024.04.09
경험기반 기법  (0) 2024.04.08
Usecase diagram  (0) 2024.04.06
Class diagram  (0) 2024.04.05
UML의 관계(Relationship)  (0) 2024.04.04

+ Recent posts