1. 화이트박스 테스트 White Box Test
- 모듈의 원시 코드를 오픈시킨 상태에서 원시 코드의 논리적인 모든 경로를 테스트하여 테스트 케이스를 설계하는 방법
- 설계된 절차에 초점을 둔 구조적 테스트
- 프로시저 설계의 제어 구조를 사용하여 테스트 케이스를 설계, 테스트 과정의 초기에 적용
- 모듈 안의 작동을 직접 관찰
- 원시 코드(모듈)의 모든 문장을 한 번 이상 실행함으로써 수행
- 프로그램의 제어 구조에 따라 선택, 반복 등의 분기점 부분들을 수행함으로써 논리적 경로를 제어
2. 화이트박스 테스트의 종류
- 기초 경로 검사 Base Path Testing
- 기초 경로 : 수행 가능한 모든 경로
- 대표적인 화이트박스 테스트 기법
- 테스트 케이스 설계자가 절차적 설계의 논리적 복잡성을 측정할 수 있게 해주는 테스트 기법
- 테스트 측정 결과는 실행 경로의 기초를 정의하는데 지침으로 사용
- 제어 구조 검사 Control Structure Testing
- 조건 검사 Condition Testing : 프로그램 모듈 내에 있는 논리적 조건을 테스트하는 테스트 케이스 설계 기법
- 루프 검사 Loop Testing : 프로그램의 반복 구조에 초점을 맞춰 실시하는 테스트 케이스 설계 기법
- 데이터 효율 검사 Data Flow Testing : 프로그램에서 변수의 정의와 변수 사용의 위치에 초점을 맞춰 실시하는 테스트 케이스 설계 기법
3. 화이트박스 테스트의 검증 기준
- 문장 검증 기준 Statement Coverage : 소스 코드의 모든 구문이 한 번 이상 수행되도록 테스트 케이스 설계
- 분기 검증 기준 Branch Coverage : 결정 검증 기준(Decision Coverage), 소스 코드의 모든 조건문에 대해 조건이 True인 경우와 False인 경우가 한 번 이상 수행되도록 테스트 케이스 설계
- 조건 검증 기준 Condition Coverage : 소스 코드의 조건문에 포함된 개별 조건식의 결과가 True인 경우와 False인 경우가 한 번 이상 수행되도록 테스트 케이스 설계
- 분기/조건 기준 Branch/Condition Coverage : 분기 검증 기준과 조건 검증 기준을 모두 만족하는 설계, 조건문이 True인 경우와 False인 경우에 따라 조건 검증 기준의 입력 데이터를 구분하는 테스트 케이스 설계
4. 블랙박스 테스트 Black Box Test
- 소프트웨어가 수행할 특정 기능을 알기 위해서 각 기능이 완전히 작동되는 것을 입증하는 테스트, 기능 테스트
- 프로그램의 구조를 고려하지 않기 때문에 테스트 케이스는 프로그램 또는 모듈의 요구나 명세를 기초로 결정
- 소프트웨어 인터페이스에서 실시되는 테스트
- 부정확하거나 누락된 기능, 인터페이스 오류, 자료 구조나 외부 데이터베이스 접근에 따른 오류, 행위나 성능 오류, 초기화와 종료 오류 등을 발견하기 위해 사용되며, 테스트 과정의 후반부에 적용
- 종류 : 동치 분할 검사, 경계값 분석, 원인-효과 그래프 검사, 오류 예측 검사, 비교 검사 등
5. 블랙박스 테스트의 종류
- 동치 분할 검사 (동치 클래스 분해) Equivalence Partitioning Testing
- 동등 분할 기법
- 입력 자료에 초점을 맞춰 테스트 케이스(동치 클래스)를 만들고 검사하는 방법
- 프로그램의 입력 조건에 타당한 입력 자료와 타당하지 않은 입력 자료의 개수를 균등하게 하여 테스트 케이스를 정하고, 해당 입력 자료에 맞는 결과가 출력되는지 확인하는 기법
- 경계값 분석 Boundary Value Analysis
- 입력 자료에만 치중한 동치 분할 기법을 보완하기 위한 기법
- 입력 조건의 중간값보다 경계값에서 오류가 발생될 확률이 높다는 점을 이용하여 입력 조건의 경계값을 테스트 케이스로 선정하여 검사하는 기법
- 원인-효과 그래프 검사 Cause-Effect Graphing Testing
- 입력 데이터 간의 관계와 출력에 영향을 미치는 상황을 체계적으로 분석한 다음 효용성이 높은 테스트 케이스를 선정하여 검사하는 기법
- 오류 예측 검사 Error Guessing
- 데이터 확인 검사
- 과거의 경험이나 확인자의 감각으로 테스트하는 기법
- 다른 블랙 박스 테스트 기법으로는 찾아낼 수 없는 오류를 찾아내는 일련의 보충적 검사 기법
- 비교 검사 Comparison Testing
- 여러 버전의 프로그램에 동일한 테스트 자료를 제공하여 동일한 결과가 출력되는지 테스트하는 기법
'자격증 > 정보처리기사' 카테고리의 다른 글
[정보처리기사 필기] 애플리케이션 테스트 관리 - 048. 통합 테스트 (0) | 2025.02.12 |
---|---|
[정보처리기사 필기] 애플리케이션 테스트 관리 - 047. 개발 단계에 따른 애플리케이션 테스트 (0) | 2025.02.11 |
[정보처리기사 필기] 애플리케이션 테스트 관리 - 045. 애플리케이션 테스트의 분류 (0) | 2025.02.11 |
[정보처리기사 필기] 애플리케이션 테스트 관리 - 044. 애플리케이션 테스트 (0) | 2025.02.11 |
[정보처리기사 필기] 제품 소프트웨어 패키징 - 043. 빌드 자동화 도구 (1) | 2025.02.11 |