what is test scenario
이 자습서에서는 테스트 시나리오의 중요성, 구현, 예제 및 템플릿과 함께 테스트 시나리오가 무엇인지 설명합니다.
테스트 할 수있는 모든 소프트웨어 기능 / 기능을 테스트 시나리오라고합니다. 최종 사용자 관점은 테스트 시나리오를 작성하는 동안 고려됩니다.
이 자습서는 테스트 시나리오가 필요한 이유, 테스트 시나리오 작성시기 및 테스트 시나리오 작성 방법과 같은 질문에 답하는 데 도움이됩니다.
학습 내용 :
테스트 시나리오 란?
가상의 상황을 고려하십시오. 광대 한 바다가 있습니다. 한 해변에서 다른 해변으로 바다를 건너야합니다. 예를 들면 인도 뭄바이 해변에서 스리랑카 콜롬보 해변까지.
선택할 수있는 여행 모드는 다음과 같습니다.
(i) 항공 : 콜롬보로 비행기 탑승
(ii) 수로 :콜롬보로 여행하는 배 선호
(iii) 철도 :스리랑카까지 기차를 타십시오.
이제 테스트 시나리오 : 뭄바이 해변에서 콜롬보 해변으로 여행하는 것은 테스트 할 기능입니다.
테스트 시나리오에는 다음이 포함됩니다.
- 항공 여행,
- 수로 여행 또는
- 철도로 여행.
이러한 테스트 시나리오에는 테스트 사례가 있습니다.
위의 테스트 시나리오에 대해 작성할 수있는 테스트 케이스는 다음과 같습니다.
테스트 시나리오 : 항공으로 여행
테스트 케이스에는 다음과 같은 시나리오가 포함될 수 있습니다.
- 항공편은 예정된 시간에 따릅니다.
- 항공편이 예정된 시간과 다릅니다.
- 긴급 상황이 발생했습니다 (폭우 및 폭풍).
같은 방식으로 나머지 다른 시나리오에 대해 별도의 테스트 케이스 세트를 작성할 수 있습니다.
이제 기술 테스트 시나리오를 살펴 보겠습니다.
테스트 할 수있는 모든 것이 테스트 시나리오입니다. 따라서 테스트중인 소프트웨어 기능을 여러 개의 작은 기능으로 나눌 수 있으며 '테스트 시나리오'라고 할 수 있습니다.
고객에게 제품을 제공하기 전에 제품의 품질을 평가하고 평가해야합니다. 테스트 시나리오는 비즈니스 요구 사항을 준수하는 소프트웨어 애플리케이션의 기능적 품질을 평가하는 데 도움이됩니다.
테스터 시나리오는 테스터가 최종 사용자 관점에서 소프트웨어 애플리케이션을 테스트하는 프로세스입니다. 소프트웨어 애플리케이션의 성능과 품질은 프로덕션 환경에서 구현하기 전에 철저히 평가됩니다.
테스트 시나리오의 중요성
- 하나의 테스트 시나리오에 여러 '테스트 사례'가있을 수 있습니다. 큰 파노라마 이미지로 볼 수 있으며 테스트 케이스는 파노라마를 완성하는 데 중요한 작은 부분입니다.
- 한 줄짜리 문장이며 테스트 사례는 테스트 시나리오 문장의 목적을 완성하기 위해 단계별 설명으로 구성됩니다.
- 예:
테스트 시나리오 : 이용 가능한 택시 서비스에 대한 지불을하십시오.
여기에는 아래와 같이 여러 테스트 케이스가 있습니다.
(나는) 사용할 결제 방법 : PayPal, Paytm, 신용 / 직불 카드.
(ii) 지불완료되었습니다.
(iii) 결제가 완료되지 않았습니다.
(iv) 지불그 사이에 프로세스가 중단되었습니다.
(V) 결제 수단에 액세스 할 수 없습니다.
(우리) 응용 프로그램그 사이에 세분화됩니다.
- 따라서 테스트 시나리오는 실제 상황에 따라 소프트웨어 응용 프로그램을 평가하는 데 도움이됩니다.
- 테스트 시나리오가 결정되면 테스트 범위를 분기하는 데 도움이됩니다.
- 이 분기는 소프트웨어 응용 프로그램의 중요한 기능을 결정하는 데 도움이되는 우선 순위 지정이라고합니다.
- 기능의 우선 순위 테스트는 소프트웨어 응용 프로그램의 성공적인 구현에 큰 도움이됩니다.
- 테스트 시나리오의 우선 순위가 지정됨에 따라 가장 중요한 기능을 쉽게 식별하고 우선 순위에 따라 테스트 할 수 있습니다. 이렇게하면 대부분의 중요한 기능이 제대로 작동하고 관련 결함이 제대로 캡처되고 수정됩니다.
- 테스트 시나리오는 소프트웨어의 비즈니스 프로세스 흐름을 결정하므로 응용 프로그램의 종단 간 테스트가 가능합니다.
테스트 시나리오와 테스트 케이스의 차이점
테스트 시나리오 | 테스트 케이스 |
---|---|
간단한 문서가 필요합니다. | 자세한 문서가 필요합니다. |
테스트 시나리오는 개념입니다. | 테스트 케이스는 그 개념을 검증하는 솔루션입니다. |
테스트 시나리오는 높은 수준의 기능입니다. | 테스트 케이스는 높은 수준의 기능을 테스트하는 자세한 절차입니다. |
테스트 시나리오는 요구 사항 / 사용자 스토리에서 파생됩니다. | 테스트 케이스는 테스트 시나리오에서 파생됩니다. |
테스트 시나리오는 '테스트 할 기능'입니다. | 테스트 사례는‘기능 테스트 방법’입니다. |
테스트 시나리오에는 여러 테스트 케이스가 있습니다. | 테스트 케이스는 여러 테스트 시나리오에 연결되거나 연결되지 않을 수 있습니다. |
단일 테스트 시나리오는 절대 반복 할 수 없습니다. | 단일 테스트 케이스는 다른 시나리오에서 여러 번 사용할 수 있습니다. |
테스트 시나리오를 완료하려면 브레인 스토밍 세션이 필요합니다. | 소프트웨어 응용 프로그램에 대한 자세한 기술 지식이 필요합니다. |
분 세부 사항으로 시간 절약이 필요하지 않습니다. | 모든 세부 사항을 처리해야하므로 시간이 많이 걸립니다. |
필요한 자원이 적기 때문에 유지 관리 비용이 낮습니다. | 필요한 자원이 높기 때문에 유지 보수 비용이 높습니다. |
테스트 시나리오가 필수적인 이유는 무엇입니까?
테스트 시나리오는 요구 사항 또는 사용자 스토리에서 파생됩니다.
- Cab 예약에 대한 테스트 시나리오의 예를 들어보십시오.
- 시나리오는 택시 예약 옵션, 지불 방법, GPS 추적, 올바르게 표시되는 로드맵, 올바르게 표시되는 택시 및 운전자 세부 정보 등과 같을 수 있습니다. 등이 모두 테스트 시나리오 템플릿에 나열됩니다.
- 이제 테스트 시나리오가 위치 서비스가 켜져 있는지 확인하는 것이라고 가정하고, 켜져 있지 않으면 '위치 서비스 켜기'메시지를 표시합니다. 이 시나리오는 누락되었으며 테스트 시나리오 템플릿에 나열되지 않았습니다.
- '위치 서비스'시나리오는 이와 관련된 다른 테스트 시나리오를 발생시킵니다. 다음이 될 수 있습니다.
- 위치 서비스가 회색으로 표시됩니다.
- 위치 서비스가 켜져 있지만 인터넷이 없습니다.
- 위치 서비스에 대한 제한.
- 잘못된 위치가 표시됩니다.
- 단일 시나리오 누락 다른 많은 것을 놓치는 것을 의미 할 수 있습니다 중요한 시나리오 또는 테스트 케이스 . 이것은 대단한 부정적인 영향 소프트웨어 응용 프로그램을 구현하는 동안. 이로 인해 상당한 자원 손실 (마감일)이 발생합니다.
- 테스트 시나리오는 철저한 테스트 피하기 . 모든 중요하고 예상되는 비즈니스 흐름이 테스트되도록 보장하여 애플리케이션의 종단 간 테스트를 더욱 지원합니다.
- 시간을 절약 할 수 있습니다. 또한 테스트 사례에 따른 자세한 설명은 필요하지 않습니다. 테스트 대상에 대해 한 줄짜리 설명이 지정됩니다.
- 테스트 시나리오는 브레인 스토밍 세션 팀원의. 따라서 시나리오 (중요하거나 사소한)를 놓칠 확률은 최소입니다. 이는 소프트웨어 애플리케이션의 기술 및 비즈니스 흐름을 염두에두고 수행됩니다.
- 또한 테스트 시나리오는 비즈니스 분석가 또는 클라이언트 또는 테스트중인 애플리케이션에 대한 명시적인 지식을 가진 두 사람 모두에 의해 승인 될 수 있습니다.
따라서 테스트 시나리오는 SDLC에서 없어서는 안될 부분입니다.
테스트 시나리오 구현
테스트 시나리오의 구현 또는 테스트 시나리오 작성 방법을 살펴 보겠습니다.
- 에픽 / 비즈니스 요구 사항이 형성됩니다.
- 에픽의 예 : Gmail 계정을 만듭니다. Epic은 애플리케이션 또는 비즈니스 요구 사항의 주요 기능이 될 수 있습니다.
- 에픽은 스프린트에서 더 작은 사용자 스토리로 나뉩니다.
- 사용자 스토리는 Epics에서 파생됩니다. 이러한 사용자 스토리는 이해 관계자가 기준을두고 승인해야합니다.
- 테스트 시나리오는 사용자 스토리 또는 BRS (Business Requirement Document), SRS (System Requirement Specification Document) 또는 FRS (Functional Requirement Document)에서 파생되며 마무리되고 기준이됩니다.
- 테스터는 테스트 시나리오를 작성합니다.
- 이러한 테스트 시나리오는 조직에 따라 팀장, 비즈니스 분석가 또는 프로젝트 관리자가 승인합니다.
- 각 테스트 시나리오는 하나 이상의 사용자 스토리와 연결되어야합니다.
- 양성 및 음성 테스트 시나리오를 식별해야합니다.
- 사용자 스토리는 다음으로 구성됩니다. 다음과 같은 허용 기준 :
- 수락 기준은 고객 요구 사항에 대한 조건 목록 또는 의도 상태입니다. 수락 기준을 작성하는 동안 고객의 기대와 오해를 고려합니다.
- 이는 하나의 사용자 스토리에 대해 고유하며 각 사용자 스토리에는 독립적으로 테스트 할 수있는 승인 기준이 하나 이상 있어야합니다.
- 허용 기준은 어떤 기능이 프로젝트 범위 내에 있는지, 어떤 기능이 범위를 벗어 났는지 결정하는 데 도움이됩니다. 이러한 기준에는 기능적 기능과 비 기능적 기능이 포함되어야합니다.
- 비즈니스 분석가가 수락 기준을 작성하고 제품 소유자가이를 승인합니다.
- 또는 어떤 경우에는 제품 소유자가 기준을 직접 작성할 수 있습니다.
- 허용 기준에서 테스트 시나리오를 얻을 수 있습니다.
테스트 시나리오 예
# 1) Kindle 앱 테스트 시나리오
Kindle은 e-reader가 온라인에서 e-book을 검색하고 다운로드하고 구매할 수있게 해주는 앱입니다. Amazon Kindle은 전자 책 독자에게 책을 손에 들고 읽는 실제 경험을 제공합니다. 페이지 넘김도 앱에서 멋지게 시뮬레이션됩니다.
소프트웨어 엔지니어링의 요구 사항 추출 기술
이제 테스트 시나리오를 기록해 보겠습니다. ( 노트 : 테스트 시나리오 작성에 대한 일반적인 아이디어를 얻기 위해 제한된 시나리오가 아래에 나열되어 있습니다. 여기에서 파생 된 여러 테스트 케이스가있을 수 있습니다.)
테스트 시나리오 # | 테스트 시나리오 |
---|---|
7 | 다운로드 기능이 올바르게 작동하는지 확인하십시오. |
하나 | Kindle 앱이 제대로 실행되는지 확인합니다. |
두 | 앱이 실행 된 후 화면 해상도가 다른 장치에 따라 조정되는지 확인합니다. |
삼 | 표시된 텍스트를 읽을 수 있는지 확인하십시오. |
4 | 확대 및 축소 옵션이 작동하는지 확인합니다. |
5 | Kindle 앱에서 가져온 호환 파일을 읽을 수 있는지 확인합니다. |
6 | Kindle 앱의 저장 용량을 확인합니다. |
8 | 페이지 넘기기 시뮬레이션이 올바르게 작동하는지 확인 |
9 | Kindle 앱과 eBook 형식 호환성을 확인하십시오. |
10 | Kindle 앱에서 지원하는 글꼴을 확인합니다. |
열한 | Kindle 앱에서 사용하는 배터리 수명을 확인하십시오. |
12 | 네트워크 연결 (Wi-Fi, 3G 또는 4G)에 따라 Kindle의 성능을 확인합니다. |
위에 언급 된 각 테스트 시나리오에서 여러 테스트 사례를 파생 할 수 있습니다.
# 2) Google 문서에 대한 수락 기준
‘Google 문서’는 워드 문서, 스프레드 시트, 슬라이드 및 양식을 작성, 편집 및 공유하는 웹 기반 애플리케이션입니다. 모든 파일은 인터넷에 연결된 웹 브라우저를 사용하여 온라인으로 액세스 할 수 있습니다.
생성 된 문서는 웹 페이지 또는 인쇄용 문서로 공유 할 수 있습니다. 사용자는 문서를보고 편집 할 수있는 사람에 대한 제한을 설정할 수 있습니다. 단일 문서는 서로 다른 지리적 위치의 다양한 개인이 공동으로 공유하고 작업 할 수 있습니다.
일반적인 이해를 위해 제한된 테스트 시나리오가 아래에 언급되어 있습니다. Google 문서에 대한 심층 테스트 시나리오는 완전히 별도의 주제가 될 수 있습니다.
허용 기준 # | 허용 기준 |
---|---|
7 | 여러 사용자가 단일 문서에서 작업 할 수 있습니다. |
하나 | Word, Sheets 또는 Forms를 오류없이 성공적으로 열 수 있습니다. |
두 | 문서, 시트 및 슬라이드에 템플릿을 사용할 수 있습니다. |
삼 | 사용자는 사용 가능한 템플릿에 액세스 할 수 있습니다. |
4 | 사용 된 템플릿은 편집이 가능합니다 (예 : 글꼴, 글꼴 크기, 텍스트 추가, 텍스트 삭제, 슬라이드 삽입). |
5 | 일시적으로 인터넷 연결을 사용할 수없는 경우 파일을 로컬에 저장하고 인터넷 연결이 가능한 경우 업로드 할 수 있습니다. |
6 | 여러 사용자가 변경 한 내용을 덮어 쓰지 않습니다. |
8 | 파일을 업로드하는 동안 인터넷 연결이 끊어지면 완료된 작업이 저장됩니다. |
9 | 공유 제한이 올바르게 적용됩니다. |
10 | 보기 제한 사용자는 문서를 편집 할 수 없습니다. |
열한 | 일반 대중을 위해 문서를 인터넷에 게시 할 수 있습니다. |
12 | 문서에 대한 변경 사항은 타임 스탬프 및 작성자 세부 정보와 함께 저장됩니다. |
테스트 시나리오의 수는 Google 문서 도구의 경우 매우 다양하고 엄청납니다. 이러한 경우 일반적으로 이해 관계자가 승인 기준을 설정하고 승인하며 팀 구성원은 이러한 승인 기준에 대해 작업합니다. 대규모 애플리케이션의 경우 테스트 케이스를 작성하거나 테스트 시나리오를 작성하는 것은 완전한 작업이 될 수 있습니다.
이러한 허용 기준은 반복적 인 프로세스 계획에서 중요한 역할을하며 간과해서는 안됩니다. 미리 정의하고 미리 정의하면 스프린트 또는 릴리스가 끝날 때 놀라움이나 충격을 피할 수 있습니다.
주어진 전제 조건.
언제 행동을 취합니다.
그때 예상되는 결과.
Given, When, Then 형식은 승인 기준을 지정하는 데 유용합니다.
테스트 시나리오 템플릿의 예
스토리 ID # 사용 | 테스트 시나리오 ID # | 버전 # | 테스트 시나리오 | # 테스트 케이스 수 | 중요성 |
---|---|---|---|---|---|
USID12.1 | TSID12.1.1 | Kin12.4 | Kindle 앱이 제대로 실행되는지 확인합니다. | 4 | 높은 |
USID12.1 | TSID12.1.2 | Kin12.4 | Kindle 앱의 저장 용량을 확인합니다. | 삼 | 매질 |
결론
모든 소프트웨어 테스트 라이프 사이클에서 테스트 시나리오를 이해하고 정리하는 것은 매우 중요한 요소입니다. 테스트 시나리오를위한 좋은 기반을 갖추면 소프트웨어의 품질이 향상 될 수 있습니다. 종종 테스트 케이스와 테스트 시나리오의 사용이 서로 바뀔 수 있습니다.
그러나 가장 좋은 규칙은 테스트 시나리오가 여러 테스트 사례를 작성하는 데 사용되거나 테스트 시나리오가 테스트 시나리오에서 파생되었다고 말할 수 있다는 것입니다. 잘 정의 된 테스트 시나리오는 양질의 소프트웨어를 보장합니다.