1. 화이트박스 테스트(White Box Test)
- 화이트박스 테스트는 모듈의 원시 코드를 오픈시킨 상태에서 원시 코드의 논리적인 모든 경로를 테스트하여 테스트 케이스를 설계하는 방법이다.
화이트박스 테스트
- 화이트박스 테스트는 설계된 절차에 초점을 둔 구조적 테스트며, 테스트 과정의 초기에 적용된다.
- 모듈 안의 작동을 직접 관찰한다.
- 원시 코드(모듈)의 모든 문장을 한 번 이상 실행함으로써 수행된다.
- 프로그램의 제어 구조에 따라 선택, 반복 등의 분기점 부분들을 수행함으로써 논리적 경로를 제어한다.
2. 화이트박스 테스트의 종류
- 화이트박스 테스트의 종류에는 기초 경로 검사, 제어 구조 검사 등이 있다.
기초 경로 검사 (Base Path Testing) |
- 대표적인 화이트박스 테스트 기법이다. - 테스트 케이스 설계자가 절차적 설계의 논리적 복잡성을 측정할 수 있게 해주는 테스트 기법, 테스트 측정 결과는 실행 경로의 기초를 정의하는 데 지침으로 사용된다. |
제어 구조 검사 (Control Structure Testing) |
- 조건 검사(Condition Testing): 프로그램 모듈 내에 있는 논리적 조건을 테스트하는 테스트 케이스 설계 기법 - 루프 검사(Loop Testing): 프러그램의 반복(Loop) 구조에 초점을 맞춰 실시하는 테스트 케이스 설계 기법 - 데이터 흐름 검사(Data Flow Testing): 프로그램에서 변수의 정의와 변수 사용의 위치에 초점을 맞춰 실시하는 테스트 케이스 설계 기법 |
3. 블랙박스 테스트(Black Box Test)
- 블랙박스 테스트는 소프트웨어가 수행할 특정 기능을 알기 위해서 각 기능이 완전히 작동되는 것을 입증하는 테스트로, 기능 테스트라고도 한다.
- 사용자의 요구사항 명세를 보면서 테스트하는 것으로, 주로 구현된 기능을 테스트한다.
- 소프트웨어 인터페이스에서 실시되는 테스트이다.
- 부정확하거나 누락된 기능, 인터페이스 오류, 자료 구조나 외부 데이터베이스 접근에 따른 오류, 행위나 성능 오류, 초기화와 종료 오류 등을 발견하기 위해 사용되며, 테스트 과정의 후반부에 적용된다.
4. 블랙박스 테스트의 종류
- 블랙박스 테스트의 종류에는 동치 분할 검사, 경계값 분석, 원인-효과 그래프 검사, 오류 예측 검사, 비교 검사 등이 있다.
동치 분할 검사 (Equivalence Partitioning Testing) |
- 입력 자료에 초점을 맞춰 테스트 케이스를 만들고 검사하는 방법으로 동등 분할 기법이라고도 한다. |
경계값 분석 (Boundary Value Analysis) |
- 입력 자료에만 치중한 동치 분할 기법을 보완하기 위한 기법이다. - 입력 조건의 중간값보다 경계값에서 오류가 발생될 확률이 높다는 점을 이용하여 입력 조건의 경계값을 테스트 케이스로 선정하여 검사하는 기법이다. |
원인-효과 그래프 검사 (Cause-Effect Graphing Testing) |
- 입력 데이터 간의 관계와 출력에 영향을 미치는 상황을 체계적으로 분석한 다음 효용성이 높은 테스트 케이스를 선정하여 검사하는 기법이다. |
오류 예측 검사 (Error Guessing) |
- 과거의 경험이나 확인자의 감각으로 테스트하는 기법 - 다른 블랙 박스 테스트 기법으로는 찾아낼 수 없는 오류를 찾아내는 일력의 보충적 검사 기법, 데이터 확인 검사라고도 한다. |
비교 검사 (Comparison Testing) |
- 여러 버전의 프로그램에 동일한 테스트 자료를 제공하여 동일한 결과가 출력되는지 테스트하는 기법이다. |
정보처리기사 필기 기출문제
32. White Box Testing에 대한 설명으로 옳지 않은 것은? ① [정답률: 64%] 정보처리기사(2020년 이후) 필기 (2020년 1회·2회 통합 기출문제) |
|
① Base Path Testing, Boundary Value Analysis가 대표적인 기법이다. | Base Path Testing(기초 경로 검사)는 화이트박스 테스트의 기법이 맞지만, Boundary Value Analysis(경계값 분석)은 블랙바스 테스트의 기법이다. |
② Source Code의 모든 문장을 한 번 이상 수행함으로써 진행 된다. | |
③ 모듈 안의 작동을 직접 관찰할 수 있다. | |
④ 산출물의 각 기능별로 적절한 프로그램의 제어구조에 따라 선택, 반복 등의 부분들을 수행함으로써 논리적 경로를 점검 한다. |
21. 평가 점수에 따른 성적부여는 다음 표와 같다. 이를 구현한 소프트웨어를 경계 값 분석 기법으로 테스트 하고자 할 때 다음 중 테스트 케이스의 입력 값으로 옳지 않은 것은? ③ [정답률: 78%] 정보처리기사(2020년 이후) 필기 (2020년 1회·2회 통합 기출문제) |
|
① 59 | 위 표의 평가점수의 C - 경계 값에 해당 |
② 80 | 위 표의 평가점수의 A와 B - 경계 값에 해당 |
③ 90 | 위 표의 평가점수의 A - 중간 값에 해당 |
④ 101 | 위 표의 평가점수의 A - 경계 값에 해당 |
25. 블랙박스 테스트의 유형으로 틀린 것은? ④ [정답률: 69%] 정보처리기사(2020년 이후) 필기 (2020년 3회 기출문제) |
|
① 경계값 분석 | |
② 오류 예측 | |
③ 동등 분할 기법 | |
④ 조건, 루프 검사 | 조건, 루프 검사는 화이트 박스 테스트의 기법이다. |
37. 블랙박스 테스트 기법으로 거리가 먼 것은? ① [정답률: 54%] 정보처리기사(2020년 이후) 필기 (2020년 4회 기출문제) |
|
① 기초 경로 검사 | 기초 경로 검사는 화이트 박스 테스트의 기법이다. |
② 동치 클래스 분해 | |
③ 경계값분석 | |
④ 원인 결과 그래프 |
66. 화이트박스 검사로 찾기 힘든 오류는? ② [정답률: 13%] 정보처리기사(2019년 이전) 필기 (2019년 3회 기출문제) |
|
① 논리흐름도 | |
② 자료구조 | 화이트박스 검사는 설계된 절차에대한 구조적 테스트다. |
③ 루프구조 | |
④ 순환복잡도 |