Thief of Wealth
Published 2020. 7. 8. 18:23
11. 화이트박스 테스트 개발/QA

화이트박스 테스트

- 코드분석과 프로그램 구조에 대한 지식을 바탕으로 문제가 발생할 가능성이 있는 모듈 내부를 테스트하는 방법

- 화이트박스 테스트, 코드기반 테스트, 로직기반 테스트, 글래스 테스트

- 프로그램 소스코드의 논리적인 구조를 커버하도록 테스트케이스를 설계하는 방법.

 

  Black Box White Box
대상 프로그램 소스코드
사전지식 메뉴얼이해, 프로그램이해, 사전지식거의없음 개발언어, 코드내용
난이도
소요시간 상 (2~3오래걸림 소스코드 분석)

 

 

테스트 유형

- 정적테스트

: 소프트웨어 실행 x

: 동료검토, 워크쓰루, 인스펙션, 공식검토 등

- 동적테스트

: 소프트웨어 실행o

: 명세기반 테스트, 구조기반 테스트, 경험기반 테스트

 

 

테스트 커버리지

- 시스템 또는 컴포넌트에서 테스트가 수행된 정도

: 얼마나 많은 범위를 테스트했는가?

- 100%커버리지?

: 모든 경로를 테스트할 수 있다록 가정해도 오류가 발생할 수 있음.

- 테스트 커버리지 측정의 장점

: 커버리지를 높이기 위해 추가로 테스트 케이스 도출

: 테스트 케이스에 의해 수행되지 않은 프로그램의 영역을 찾을 수 있음

: 프로그램의 품질을 간접적으로 측정할 수 있는 정량적 방법.

- 테스트 커버리지 측정의 단점

: 코드로 작성된 부분에 대해서만 커버리지 측정이 가능

: 특정 기능이 구현되지 않거나 명세서의 기능이 생략된 경우 결함 발견이 안됨.

 

 

화이트박스 테스트의 목표

: 적합한 테스트가 수행되도록 일부 경로를 선택하여 실행

 

 

(여기서 부터 실습예제는 책 참고)

 

문장 커버리지

: 프로그램 내 모든 문장을 적어도 한번이상 실행하는 것을 기준으로 하는 테스트방법

 

분기 커버리지 (결정 커버리지)

: 각 분기가 참/거짓을 적어도 한번 이상 실행시키는 것을 기준으로 하는 테스트 방법

: 실행된 분기가 몇 %인지 측정하는 커버리지.

 

조건 커버리지

: 전체 조건식의 결과와 관계없이 모든 기본 조건식의 결과 값이 참/거짓을 적어도 한번이상 실행시키는 것을 기준으로 테스트하는것.

* 조건커버리 100% 만족했다해서 분기커버리지가 100%만족된것이 아니면 그 반대도 마찬가지

 

조건/분기 커버리지

: 각 기본 조건식 및 전체 조건식의 결과 값이 참/거짓을 적어도 한번이상 실행시키는 것을 기준으로 하는 테스트

분기커버리지 + 조건커버리지

 

다중 조건 커버리지 (기본조건식 사이 모든 조합)

: 각 조건문 내의 기본조건식이 가능한 논리적인 조합이 적어도 한번 테스트 되도록 테스트케이스를 도출하는 방법

= TC에 의해 실행된 기본조건식의 참/거짓 조합의 수 모든 기본조건식의 참/거짓 모든 조합의 수

 

 

 

화이트박스 테스트는 어떤 경우에 사용하기 적합한가?

: 규모가 작으며 신뢰성이 높게 요구되는 임베디드 sw의 테스트

: 높은 신뢰성이 요구되는 주요 모듈만 선별적으로 테스트 하는 경우

: 자동화 테스트 도구 사용이 가능한 환경

 

화이트박스 테스트만 수행하면 테스트가 완료되는가?

: 화이트박스 테스트가 모든 것을 해결해주는것은 아니다.

요구사항에 기반한 명세기반 시험과 병행하는 것이 가장 좋다.

 

 

 

테스트

 

1. 소스코드 내의 모든 ()들을 한번 이상 실행하도록 테스트케이스를 설계하는 방법을 문장 커버리지라고 한다.

2. 각 분기가 a와 b를 적어도 한번 이상 실행 시키는 테스트 방법을 분기 커버리지라고 한다.

3. 전체 조건식의 결과와 관계없이 모든 ()의 결과 값이 참/거짓을 적어도 한번이상 실행시키는 테스트 방법을 조건 커버리지라고 한다.

4. 각 a조건식 및 b조건식의 결과 값이 참과 거짓을 적어도 한번 이상 실행시키는 테스트방법을 조건/분기 커버리지라고 한다.

5. 각 조건문 내 기본 조건식의 ()을 적어도 한번 이상 실행시키는 테스트방법을 다중 조건 커버리지라고 한다.

 

 

 

 

 

 

 

 

 

 

1. 문장

2. 참, 거짓

3. 기본조건식

4. 기본, 전체

5. 가능한 논리적인 조합

 

 

'개발 > QA' 카테고리의 다른 글

13. 블랙박스 테스트2  (0) 2020.07.10
12. 블랙박스 테스트  (0) 2020.07.09
10. 테스트 실행  (0) 2020.07.08
9. 테스트 분석 및 설계  (0) 2020.07.08
8. 위험도 분석  (0) 2020.07.08
profile on loading

Loading...