23.06.15
DEVOTEE를 활성화 시키면
지금 작성한 커뮤니티 글에 대해 1개의 댓글을 달아줍니다.
버튼을 누르면 글 수정 시 ChatGPT가 작성한 댓글이 수정됩니다.
| 컨텐츠 유형 | 제목 | 저장일 | 삭제 |
|---|
본인인증 로그인에 실패하였습니다.
회원이 아니시거나 본인인증 등록이
완료되지 않은 사용자입니다.
Q.테스트의 목적은 무엇입니까?
A. 버그를 잡는 것입니다.
Q.왜 버그를 잡습니까?
A. 좋은 애플리케이션을 만들기 위해서입니다.
Q.좋은 애플리케이션은 무엇입니까?
A. 버그가 없는 애플리케이션입니다.
마치 테스트 직군의 인터뷰에서 압박 면접을 하는 듯한 느낌을 받게 하는 대화입니다.
하지만 이런 근본적인 질문들 어떻게 하면 버그를 좀 더 잘 잡을 수 있을까? 무엇이 좋은 애플리케이션인가?
하는 이 질문을 업무를 수행할 때 한번씩 떠올림으로써 업무 역량을 높이고 좀더 나은 방법을 찾는 계기가 됩니다.
그러면서 다른 답변을 하게 됩니다.
Q. 테스트의 목적은 무엇입니까?
A. 사용자들이 원하는 목적에 맞는 품질 좋은 애플리케이션을 제공 하는것입니다.
Q.품질 좋은 애플리케이션은 무엇입니까?
A. 요구사항을 모두 충족하는 기능을 제공함과 더블어 사용성, 신뢰성 등의 품질 특성을 만족하는 애플리케이션입니다.
Q.요구사항을 만족하려면 어떻게 테스트 해야 합니까?
A. 테스트 기법을 이용하여 개발 과정에 맞게 단계별로 테스트를 수행합니다.
끝도 없는 질문과 답변을 통해 테스트와 품질에 대해 고민하면서 테스트 기법과 사용자 분석 등 기존에 방식에 담당 제품의 특성을 더해 품질 향상을 고민합니다.
이 때 사용되는 기법이 바로 탐색적 테스트입니다.
탐색적 테스트는 요구사항 문서나 사용자 스토리에 없는 다양한 상황에서 애플리케이션의 작동을 탐색합니다.
이를 통해 사용자 애플리케이션을 이용하는 시나리오를 발견하고 버그를 발견하기도 합니다. 이 테스트 기법은 주로 명세기반의 테스트 케이스를 모두 수행한 후에 실행합니다.
명세 기반의 매뉴얼 테스트의 목적은 주로 요구사항을 명확하게 구현되어 있는가에 촛점을 맞춰서 버그를 발견하는 것인데 비해
탐색적 테스트는 요구사항과 구현된 기능과 사용자 사용흐름 간의 관계에서 애플리케이션의 품질을 향상시키기 위한 흐름을 파악하는데 목적이 있다고 할 수 있습니다.
탐색적 테스트는 아래 테스트들과 구분해서 생각해 볼 필요가 있습니다.
Exploratory Testing vs ad-hoc testing
ad-hoc testing은 이름 그대로 즉흥적으로 테스트 기법을 이용한 설계나 문서 없이 검증을 진행하는 비공식적인 테스트 방식입니다. 보통 테스트 커버리지를 모두 수행한 후 진행합니다.
Exploratory Testing vs monkey testing
몽키 테스트는 기능을 전혀 모르는 상태에서 시도하는 것인데 반해 탐색적 테스트는 검증 대상에 대한 기능 명세를 모두 알고 있는 상태에서 검증합니다.
Exploratory Testing vs Random testing
Random testing은 테스트 설계 기법을 통해 입력값을 따로 설정해 주지 않고 임의로 값을 선택해서 수행하는 방법입니다.
보통 탐색적 테스트는 검증 범위를 미리 고정하여 테스트 차터에 작성합니다.
한정된 시간안(time boxing)에 집중적으로 대상 기능이나 범위에 한정하여 테스트를 수행하면서 경험을 기반으로 수행합니다.
이 과정을 테스트 설계와 동시에 실행이 된다고 부릅니다. 이 때 버그가 발견된다고 수행 과정을 메모하고 테스트 케이스로 발전시킬 수 있습니다.
검증 대상을 분석합니다.
사용자 페르소나, 도메인, 비즈니스 우선순위, 인프라 및 구성, 어플리케이션 아키텍처를 바탕으로 테스트 대상 애플리케이션을 이해합니다.
검증 대상을 지정해서 지정시간동안에는 그 대상만 검증합니다.
기능적 사용자 흐름(단일 사용자, 반복 사용, 다중 사용자), 실패와 오류처리(네트워크, 서비스, 하드웨어 장애, 사용자 작업 유효성 검사),
UI look & feel(크로스 브라우저 호환성, 시각적테스트 ), 비기능 검증(보안, 개인정보, 인증, 권한)으로 검증 영역을 나누고 지정시간동안에는 그 대상만 검증합니다.
테스트 기법을 이용합니다.
테스트 케이스 설계할 때 사용하는 동등클래스 분할, 경계값 분석, 상태전환, 결정 테이블, 인과관계 그래프, 페어와이즈 테스트, 샘플링, 오류추측을 검증하면서 떠오르는 대로 적용하여 검증합니다.
탐색적 테스트는 검증경험이 많아질수록 검증 대상에 대한 이해와 사용자에 대한 이해가 깊을수록 더 효율적인 테스트 방식입니다.
실제로 시간을 정해 놓고 오후 2-3시 이런식으로 빈종이에 시간과 검증 대상을 적고 집중적으로 노트에 손이 가는 흐름을 파악하면서 검증을 해보는 연습은 반드시 도움이 됩니다.
QA 업무에 관심이 있거나 현업에 종사하신다면 이런 훈련을 한번 해보는 것을 추천합니다.
https://www.browserstack.com/guide/exploratory-testing
https://www.oreilly.com/library/view/full-stack-testing/9781098108120/
DEVOTEE를 활성화 시키면
지금 작성한 댓글에 AI가 댓글을 달아줍니다.