불완전한 명세를 보완하는 경험 기반 테스트 설계
경험 기반 테스트의 오류추정, 탐색적 테스트, 분류 트리 활용법과 불완전 명세 환경에서의 운영 방식을 정리한다.
2026-08-14 · 최초 발행 2025-12-15
요구사항 문서가 충분하지 않거나 검증 시간이 촉박할 때는, 이미 알려진 결함 양상과 테스터의 도메인 감각이 테스트 설계의 출발점이 된다. 경험 기반 테스트는 문서화되지 않은 예외와 현장에서 반복된 문제를 토대로 결함 가능성이 높은 구간을 집중적으로 확인하는 비공식 테스트 기법군이다.
명세 밖의 위험을 겨냥하는 테스트
경험 기반 테스트에서는 과거 장애, 유사 시스템의 결함, 운영 로그에서 드러난 패턴, 테스터의 휴리스틱을 근거로 테스트 케이스를 만든다. 명시적 명세가 부족하더라도 결함이 날 법한 지점을 추정해 공격적으로 검증하는 방식이다.
대표 기법을 묶어 기억하는 약칭으로는 오탐분소체가 쓰인다. 오류추정(오), 탐색적 테스트(탐), 분류 트리 기법(분), 소프트웨어 특성 기반 테스트(소, ISO/IEC 9126-2), 체크리스트 기반 테스트(체)를 포함할 수 있으나, 조직마다 포함 범위는 다르다.
SW 특성 기반 평가는 ISO/IEC 9126-2를 바탕으로 활용할 수 있다. 최신 표준은 ISO/IEC 25010으로 개정되어 있으므로 최신 정보 확인이 필요하다.
예외 상황과 사람의 판단을 활용하는 방식
이 접근은 예상하지 못한 시나리오, 다중 이벤트 조합, 경계와 에지 케이스를 우선 탐색한다. 명세에서 빠진 구간을 메우는 데 적합하며, 회귀 검증보다는 결함 발견 효율을 높이는 데 초점이 있다.
테스터는 도메인 지식, 장애 대응 이력, 운영 로그의 패턴에서 단서를 얻는다. 다만 사람의 판단에는 편향이 개입될 수 있으므로 페어 테스팅과 리뷰 절차를 함께 두는 편이 좋다.
몽키테스트는 사용자의 비의도적 조작을 랜덤 입력과 행동으로 모사한다. 무작위 스와이프, 비정상적으로 빠른 연타, 포커스 전환 반복이 여기에 해당한다. 자동화 도구나 스크립트를 병행하면 재현성을 높일 수 있다.
오류추정은 널 처리 누락, 경계 초과, 국제화·인코딩, 동시성, 타임아웃처럼 반복적으로 나타나는 결함 패턴을 겨냥한다. 탐색적 테스트는 학습·설계·실행을 동시에 진행하며, 타임박싱과 차터 기반 세션으로 운영한다. 분류 트리 기법은 입력 클래스와 조합을 구조화해 사례를 만들고 조합 폭발을 완화한다. SW 특성 기반 테스트는 기능성, 신뢰성, 사용성, 효율성, 유지보수성, 이식성별로 시나리오를 설계한다.
경험 기반 테스트는 명세 기반 및 구조 기반 테스트를 대체하기보다 공백을 보완하는 방식으로 운영한다. 결함 리포트에는 재현 절차, 관찰 로그, 환경 정보를 표준 양식으로 남겨 결과의 일관성을 확보해야 한다.
테스트 방법을 비교할 때 보는 지점
| 방법 | 성능(결함발견 효율) | 확장성(팀 확장) | 일관성 | 안정성(결과 변동성) | 운영 편의 |
|---|---|---|---|---|---|
| 경험 기반 | 높음(초기 탐지율 우수) | 중간(숙련도 의존) | 중간 이하(사람 변수) | 중간(세션 품질 편차) | 높음(준비 부담 낮음) |
| 명세 기반 | 중간 | 높음(절차화 용이) | 높음 | 높음 | 중간(문서 의존) |
| 구조 기반(코드/커버리지) | 중간 | 중간 | 높음 | 높음 | 중간(도구·환경 필요) |
불확실성이 큰 프로젝트에서의 활용
MVP나 PoC에서는 로그인→결제→영수증처럼 핵심 사용자 여정을 중심으로 탐색적 세션을 운영할 수 있다. 결함 로그와 고객 VOC를 바탕으로 오류추정 시나리오의 우선순위를 정한다.
문서가 없는 레거시 구간에서는 운영자 인터뷰와 장애 이력 분석으로 위험 지점을 찾는다. 분류 트리로 입력 조합을 축약한 뒤, 몽키테스트로 장시간 스트레스 조작을 병행할 수 있다.
모바일 앱이 플랫폼 변경을 맞으면 OS 메이저 업데이트 직후 포그리션(focused regression) 탐색을 수행한다. 포어그라운드·백그라운드 전환, 네트워크 플랩, 권한 변경 반복을 확인하고, 국제화·로케일 전환, 폰트 스케일링, 접근성 옵션까지 SW 특성 기반 시나리오를 넓힌다.
결제와 인증처럼 위험도가 높은 흐름에서는 타임아웃, 중복 클릭, 뒤로 가기, 세션 만료를 오류추정 패턴으로 집중 검증한다. 특정 모듈에 지나치게 몰입해 주변 결함을 놓치는 고릴라 테스트 편향과 선택적 주의(inattentional blindness) 리스크도 인지해야 한다.
차터와 증거를 남기는 운영 방식
입력으로는 리스크 목록, 과거 결함 로그, 유사 앱 사례, 테스터의 도메인 지식을 수집한다. 이를 바탕으로 목표·범위·리스크·시간을 담은 차터를 설계하고, 세션은 30~90분 타임박싱으로 운영한다. 세션 중에는 화면, 네트워크, 콘솔 로그를 증거로 수집한다.
출력물은 재현 절차·환경·심각도를 갖춘 결함 리포트다. 발견 결과는 차터 개선과 체크리스트 업데이트로 이어져야 한다. 페어·모브 테스팅, 세션 종료 브리핑, 오탐 분류 기준 합의도 운영에 포함한다. 리스크 기반 우선순위를 정하고 명세 기반 테스트 및 자동화 회귀와 파이프라인을 통합하며, 세션 타이머·화면 및 네트워크 캡처·분류 트리 모델러·랜덤 입력 스크립트를 활용할 수 있다.
속도와 일관성 사이의 운영 기준
경험 기반 테스트는 P1/P2 결함 발견 리드타임을 2040% 단축할 수 있으며, 조직·도메인 성숙도에 따라 변동한다. 차터 기반 설계는 케이스 준비 시간을 1530% 절감할 것으로 기대할 수 있다. 명세에 포함되지 않은 시나리오를 보완해 커버리지 공백을 줄이고, 현업 VOC에 대응하는 속도도 높인다.
이 과정에서 리스크 감도와 사용자 맥락에 대한 이해가 깊어진다. 휴리스틱과 체크리스트가 자산으로 쌓이면 팀 학습이 빨라지고, 불확실한 환경에 대응하는 힘과 출시 전 심리적 안전성도 높아진다.
다만 결과의 일관성·재현성은 테스터 숙련도에 영향을 받는다. 차터, 타임박싱, 페어리뷰, 로그 표준화로 작업을 체계화하고, 분류 트리·오류추정·SW 특성 기반 시나리오를 우선 활용하는 방식이 필요하다. 고릴라 테스트 편향을 막기 위한 커버리지 점검도 함께 수행한다.