본문으로 건너뛰기
중급약 12시간 (예상)

탐색적 테스팅

차터 작성, 변수 발견, 상태·전이 모델링, 생태계와 신뢰 경계 탐험, 재현 불가능한 버그 다루기까지. 스크립트가 닿지 않는 영역을 다룬다.

★ 실무 핵심. 레슨 수가 가장 많은 축에 속한다 — 기법마다 따로 연습한다.

학습 목표

이 모듈 한 줄 요약 — "미리 적어 둔 것 밖에서 결함을 찾는 법". 모듈 3의 설계 기법은 전부 "미리 생각해 둔 것" 을 확인한다. 아무리 꼼꼼해도 상상하지 못한 것은 목록에 안 들어간다. 탐색적 테스팅은 그 바깥을 노린다 — 해 보면서 배우고, 배운 것으로 다음에 무엇을 해 볼지 그 자리에서 정한다.

"아무렇게나 눌러 보는 것" 과는 다르다. 목표가 있고, 시간이 정해져 있고, 무엇을 봤는지 기록한다. 그 차이가 첫 레슨의 주제다.

이 모듈을 마치면 탐색적 테스팅을 "정해진 스크립트 없는 즉흥적 클릭"이 아니라 학습·설계·실행이 동시에 일어나는 규율 있는 활동으로 이해하고 실제로 운영할 수 있다. 차터를 쓰고, 숨은 변수를 찾고, 상태와 관계를 실시간으로 탐험하고, 화면이 없는 API까지 탐험하고, 재현 안 되는 버그를 다루고, 언제 충분히 탐험했는지 판단하는 법까지 다룬다.

완료 후 할 수 있는 것

  • 스크립트 테스트·경험 기반 테스트·탐색적 테스팅을 구분해 설명할 수 있다
  • 좋은 차터(Charter)를 써서 시간 상자 안에서 탐험을 진행할 수 있다
  • 악몽의 머리기사 게임으로 리스크를 구체적인 차터로 바꿀 수 있다
  • 콘솔·네트워크·로그를 함께 보며 화면에 안 보이는 결함을 잡을 수 있다
  • 숨어 있는 변수를 찾아내고, 순서·상호작용·퍼소나를 바꿔가며 탐험할 수 있다
  • 개체·관계·상태를 실시간으로 추적하며 데이터 일관성 결함을 찾을 수 있다
  • 소프트웨어 생태계와 신뢰 경계를 그려 외부 의존성 리스크를 탐험할 수 있다
  • 화면이 없는 API도 탐험 대상으로 다룰 수 있다
  • 레거시 시스템을 정찰 세션과 이해관계자 인터뷰로 이해할 수 있다
  • 재현 안 되는 버그를 증거 중심으로 다루고 정직하게 보고할 수 있다
  • 짝 탐험을 운영하고, 차터 단위로 탐험 시간을 추정하고, 언제 충분한지 판단할 수 있다
  • 휴리스틱 치트시트를 탐험이 막혔을 때 참고 도구로 활용할 수 있다

채용시장에서의 위치

"탐색적 테스팅 경험"은 QA 채용공고에서 가장 자주 언급되는 실무 역량 중 하나다. 자동화나 스크립트로는 절대 못 잡는 결함 — 예상치 못한 조합, 숨은 변수, 재현 안 되는 버그 — 을 잡아내는 능력이 곧 "테스트 케이스만 실행하는 사람"과 "진짜 결함을 찾는 사람"을 가르는 기준이다. 이 모듈은 이 커리큘럼에서 레슨 수가 가장 많은 축에 속한다 — 기법 하나하나가 따로 연습할 가치가 있어서 잘게 나눠 두었기 때문이다.

레슨 (14개)

  1. 중급약 20분

    탐색적 테스팅이란 — 스크립트 테스트와의 차이, 시간 상자 안에서 탐험하기

    탐색적 테스팅은 즉흥적 클릭이 아니라 학습·설계·실행이 동시에 일어나는 규율 있는 활동이다. 스크립트·경험 기반 테스트와 무엇이 다른지 구분한다.

  2. 중급약 18분

    차터(Charter) 작성법 — 좋은 차터의 조건

    탐험에 방향을 주는 미션 선언문, 차터를 쓴다. 너무 막연하지도, 스크립트처럼 너무 구체적이지도 않은 지점을 찾는다.

  3. 중급약 18분

    악몽의 머리기사 게임 — 리스크를 차터로 바꾸기

    이 제품이 뉴스에 최악의 방식으로 나온다면 헤드라인이 뭘까를 상상해 형식적인 리스크 분석이 놓치는 위험을 끄집어낸다.

  4. 중급약 20분

    세심하게 관찰하기 — 보이지 않는 것을 보이게 만들기, 콘솔과 로그 활용

    화면이 멀쩡해 보여도 콘솔에는 에러가 찍히고 있을 수 있다. 탐험하는 동안 화면 밖의 신호까지 함께 관찰하는 습관을 만든다.

  5. 중급약 20분

    변수 찾아내기 — 숨어 있는 변수와 대참사

    입력 필드만 변수가 아니다. 시간대, 데이터 양, 브라우저 상태처럼 아무도 "변수"라고 인식하지 않는 요소들이 실제 대참사급 결함을 만든다.

  6. 중급약 20분

    순서와 상호작용 바꿔보기, 퍼소나 기법

    정해진 순서대로만 조작하면 순서 의존적인 결함을 놓친다. 순서를 뒤섞고, 여러 조작을 동시에 해보고, 다른 성격의 사용자가 되어 탐험한다.

  7. 중급약 20분

    개체와 관계 탐험: 속성·의존성, CRUD, 데이터 따라가기

    화면 흐름이 아니라 시스템이 다루는 것들(사용자, 주문, 쿠폰)을 중심으로, 하나를 지우거나 바꿨을 때 연결된 다른 것들이 어떻게 되는지 추적한다.

  8. 중급약 20분

    상태와 전이 발견: 상태 모델 다이어그램, 상태 테이블

    모듈 3에서는 이미 알려진 상태를 표로 그려 테스트했다. 여기서는 실제로 탐험하며 문서에 없던 상태를 실시간으로 발견하고 그려나간다.

  9. 중급약 20분

    소프트웨어 생태계 탐험: 생태계 다이어그램, 신뢰 경계, "만약 ~한다면?"

    시스템은 혼자 존재하지 않는다. 결제 게이트웨이, 이메일 서비스 같은 외부 의존성을 그려보고, 그 경계가 무너지면 무슨 일이 생기는지 탐험한다.

  10. 중급약 20분

    사용자 화면이 없는 곳 탐험하기 (API·웹서비스)

    클릭할 화면이 없어도 탐험은 가능하다. API에 예상 밖의 요청을 보내며 백엔드를 직접 탐험하는 법을 익힌다.

  11. 중급약 20분

    기존(레거시) 시스템 탐험: 정찰 세션, 이해관계자 인터뷰

    문서도 없고 원작자도 떠난 시스템을 테스트해야 할 때, "버그 찾기"가 아니라 "이해하기"를 목표로 하는 정찰 세션을 먼저 연다.

  12. 중급약 18분

    재현 불가능한 버그 다루기

    한 번 보고 다시는 안 생기는 버그는 무시해야 할 착시가 아니라, 숨은 변수와 동시성이 만든 진짜 결함일 수 있다. 증거를 즉시 남기는 법을 익힌다.

  13. 중급약 20분

    짝 탐험(Pair Exploration), 탐험 추정, 언제 충분한가

    둘이 함께 탐험하면 혼자보다 더 많이 본다. 그리고 "탐색적 테스팅은 언제 끝나는지 알 수 없다"는 흔한 오해에 실무적인 답을 준다.

  14. 중급약 20분

    테스트 휴리스틱 치트시트 (일반 + 웹)

    탐험이 막힐 때 꺼내 보는 기억 보조 도구. SFDPOT 같은 일반 휴리스틱과 웹 특화 체크 항목으로, 이 모듈에서 배운 기법 전체를 하나의 참조표로 정리한다.

이 모듈의 실습

실습은 별도 저장소에서 진행합니다. 새 탭으로 열립니다.