QA를 처음 공부하다 보면 테스트 시나리오(Test Scenario)와 테스트 케이스(Test Case)라는 용어를 자주 접하게 됩니다.
둘 다 소프트웨어를 테스트하기 위해 사용하는 개념이라 처음에는 상당히 헷갈리는데요. 저 역시 처음에는 “둘 다 테스트하는 내용을 적어두는 것 아닌가?”라고 생각했습니다.
하지만 실제로는 테스트 시나리오와 테스트 케이스는 구체성에서 차이가 있습니다. 오늘은 QA 입문자가 꼭 알아두면 좋은 테스트 시나리오와 테스트 케이스의 차이점을 쉽게 정리해 보겠습니다.
테스트 시나리오란 무엇일까?
테스트 시나리오는 쉽게 말해 “무엇을 테스트할 것인가?”를 정리한 것입니다.
하나의 기능이나 사용자의 행동을 큰 범위에서 정의한다고 생각하면 이해하기 쉽습니다.
예를 들어 쇼핑몰 서비스를 테스트한다고 가정해 보겠습니다.
- 회원가입을 테스트한다.
- 로그인을 테스트한다.
- 상품 검색을 테스트한다.
- 상품을 장바구니에 담는 기능을 테스트한다.
- 주문 및 결제 기능을 테스트한다.
이처럼 테스트해야 할 큰 흐름이나 기능을 정의한 것이 테스트 시나리오입니다.
즉, 세부적인 테스트 방법보다는 “어떤 영역을 확인해야 하는가?”에 초점을 둡니다.
테스트 케이스란 무엇일까?
반면 테스트 케이스는 “어떻게 테스트할 것인가?”를 구체적으로 작성한 것입니다.
앞에서 로그인 기능을 테스트한다고 했을 때 단순히 “로그인을 테스트한다”라고 적는 것은 테스트 시나리오에 가깝습니다.
테스트 케이스에서는 실제로 어떤 조건과 데이터를 사용할지 구체적으로 작성합니다.
예를 들어 다음과 같습니다.
테스트 항목: 정상적인 계정으로 로그인
테스트 절차
- 로그인 페이지에 접속한다.
- 등록된 아이디를 입력한다.
- 올바른 비밀번호를 입력한다.
- 로그인 버튼을 클릭한다.
예상 결과: 로그인에 성공하고 메인 페이지로 이동한다.
이처럼 테스트 케이스는 실제 QA 담당자가 동일한 방법으로 테스트를 수행할 수 있을 정도로 구체적으로 작성합니다.
테스트 시나리오와 테스트 케이스의 차이
두 개념을 가장 간단하게 구분하면 다음과 같습니다.
테스트 시나리오 = 무엇을 테스트할 것인가?
테스트 케이스 = 어떻게 테스트할 것인가?
예를 들어 “회원가입 기능을 테스트한다”가 테스트 시나리오라면, 테스트 케이스에서는 정상적인 회원가입뿐만 아니라 다양한 상황을 세부적으로 나눌 수 있습니다.
- 정상적인 이메일로 회원가입
- 이미 가입된 이메일 입력
- 이메일 형식이 잘못된 경우
- 비밀번호 조건을 충족하지 못한 경우
- 필수 항목을 입력하지 않은 경우
- 비밀번호와 비밀번호 확인이 다른 경우
이처럼 하나의 테스트 시나리오에서 여러 개의 테스트 케이스가 만들어질 수 있습니다.
테스트 시나리오가 중요한 이유
테스트 시나리오는 테스트 범위를 빠뜨리지 않도록 관리하는 데 도움이 됩니다.
프로젝트의 기능이 많아지면 QA가 모든 기능을 머릿속으로 기억하기 어렵습니다.
따라서 먼저 테스트 시나리오를 통해 전체적인 테스트 범위를 정리하고, 그 아래에 필요한 테스트 케이스를 작성하면 체계적으로 테스트를 진행할 수 있습니다.
특히 프로젝트 규모가 커질수록 어떤 기능을 테스트했는지 명확하게 관리하는 것이 중요합니다.
테스트 케이스는 왜 중요할까?
테스트 케이스는 테스트 결과를 일정한 기준으로 관리하기 위해 필요합니다.
담당자가 변경되더라도 동일한 테스트를 수행할 수 있고, 이전에 진행했던 테스트 결과를 참고할 수도 있습니다.
또한 새로운 기능이 추가되거나 기존 기능이 수정됐을 때 어떤 테스트를 다시 진행해야 하는지도 확인할 수 있습니다.
이 때문에 실제 QA 업무에서는 테스트 케이스를 테스트 관리 도구에 등록하고 지속적으로 관리하는 경우가 많습니다.
한눈에 비교해보자
| 구분 | 테스트 시나리오 | 테스트 케이스 |
|---|---|---|
| 핵심 질문 | 무엇을 테스트할까? | 어떻게 테스트할까? |
| 범위 | 상대적으로 넓음 | 상대적으로 구체적 |
| 목적 | 테스트 영역과 흐름 정의 | 실제 테스트 수행 |
| 예시 | 회원가입 기능 테스트 | 이메일 중복 시 가입 실패 확인 |
| 관계 | 여러 테스트 케이스를 포함할 수 있음 | 특정 시나리오를 세부적으로 검증 |
다만 회사마다 테스트 시나리오와 테스트 케이스라는 용어를 사용하는 방식에는 차이가 있을 수 있습니다. 따라서 실무에서는 조직의 테스트 프로세스와 문서 작성 기준을 확인하는 것이 좋습니다.
마무리
테스트 시나리오와 테스트 케이스는 QA 업무에서 매우 자주 사용되는 기본 개념입니다.
처음에는 비슷해 보여도 테스트 시나리오는 전체적인 테스트 대상과 흐름을 정의하고, 테스트 케이스는 실제 테스트 방법과 예상 결과를 구체적으로 작성한다고 이해하면 쉽습니다.
QA를 처음 공부하고 있다면 먼저 테스트 시나리오로 큰 그림을 잡고, 테스트 케이스를 통해 세부적인 테스트 항목을 만들어 보는 연습을 추천합니다.
다음에는 테스트 계획서란 무엇인지, QA 실무에서 왜 테스트 계획을 세우는지 알아보겠습니다.