본문 바로가기
소프트웨어공학

소프트웨어 테스팅 기법과 전략 총정리

by 매일기술사 2026. 3. 19.
SW Engineering · 한장정리

[기술사토픽] 소프트웨어 테스팅 완벽 정리 - 한장정리

V&V 개념, 블랙박스·화이트박스 테스트 기법, V모델 4단계 테스트 레벨, 커버리지 기준까지 정보관리기술사·컴퓨터시스템응용기술사 빈출 주제를 완벽 정리합니다.

소프트웨어테스팅 블랙박스 화이트박스 V모델 정보관리기술사

Ⅰ.소프트웨어 품질 검증 기술, 테스팅의 개요

개념: 소프트웨어 테스팅이란 소프트웨어의 결함을 발견하고 품질을 검증하기 위해 계획된 조건 하에서 시스템을 실행하는 과정입니다.

특징: (1) V&V(Verification & Validation)를 통한 이중 품질 검증 (2) 결함 발견이 늦을수록 수정 비용 기하급수적 증가 (3) 완전한 테스팅은 불가능 — 위험 기반 우선순위 필요

가. V&V 개념 비교
Verification
올바르게 만들고 있는가? — 명세 대비 소프트웨어 검증. 개발 과정 중 수행.
 
Validation
올바른 것을 만들었는가? — 사용자 요구 대비 소프트웨어 검증. 개발 완료 후 수행.
암기 팁

Verification = 과정 검증 (Are we building it right?) / Validation = 결과 검증 (Are we building the right thing?)

Ⅱ.V모델 & 테스트 레벨 4단계

V모델은 개발 단계와 테스트 단계를 대응시킨 모델로, 각 개발 산출물에 대응하는 테스트 레벨을 정의합니다.

가. V모델 구성도
개발 단계 대응 테스트 레벨
요구사항 분석 ←→ 인수 테스트
시스템 설계 ←→ 시스템 테스트
상세 설계 ←→ 통합 테스트
구현 (코딩) ←→ 단위 테스트
나. 테스트 레벨별 특징
테스트 레벨 비교
레벨 대상 수행 주체 목적
단위 테스트 개별 모듈·함수 개발자 모듈 내부 로직 검증
통합 테스트 모듈 간 인터페이스 개발팀 인터페이스 오류 검출
시스템 테스트 전체 시스템 QA팀 기능·비기능 요구사항 검증
인수 테스트 실운영 환경 사용자·고객 사용자 요구 충족 확인

Ⅲ.블랙박스 vs 화이트박스 테스트 기법

테스트 기법은 내부 구조 노출 여부에 따라 블랙박스(명세 기반)화이트박스(구조 기반)로 나뉩니다.

블랙박스 테스트
동등 분할 — 입력을 동등한 그룹으로 분류
경계값 분석 — 경계값 집중 테스트
원인-결과 그래프 — 입출력 관계 분석
결정 테이블 — 조건·행위 조합 분석
상태전이 테스트 — 상태 변화 흐름 검증
페어와이즈 — 2인자 조합 최소화
화이트박스 테스트
문장 커버리지 — 모든 문장 1회 실행
분기 커버리지 — 모든 분기 True/False
조건 커버리지 — 각 조건 True/False
MC/DC — 항공·안전 최고 기준
경로 커버리지 — 모든 경로 실행
루프 테스트 — 반복문 경계 검증
블랙박스 vs 화이트박스 비교
구분 블랙박스 화이트박스
관점 기능·명세 기반 내부 구조·코드 기반
내부 구조 노출 불필요 필요
수행 주체 테스터 (비개발자 가능) 개발자
테스트 시점 시스템·인수 테스트 단위·통합 테스트
장점 사용자 관점 검증 코드 논리 오류 발견
단점 내부 오류 발견 어려움 모든 경로 테스트 불가
시험 포인트

커버리지 강도: 문장 < 분기 < 조건 < MC/DC < 경로 순으로 강해짐. MC/DC는 항공·안전 시스템 필수 기준!

Ⅳ.결론 및 전문가 의견

결론

소프트웨어 테스팅은 단순한 버그 발견을 넘어 품질을 설계하는 과정입니다.
향후 AI 기반 자동 테스트 생성, Shift-Left Testing(개발 초기부터 테스트), 카오스 엔지니어링으로 발전하며 지속적 품질 보증의 핵심 역할을 담당합니다.

"테스팅은 결함의 존재를 보여줄 수 있지만, 결함의 부재를 증명할 수는 없다." — Dijkstra

블로그: 기술사 학습노트 · imt-log.tistory.com