Software Quality

탐색적 테스트(Exploratory Testing) 본문

SQA/이론

탐색적 테스트(Exploratory Testing)

Kairoka 2023. 10. 1. 21:40

1. What is Exploratory Testing?

탐색적 테스트는 테스트 케이스를 사전에 작성하지 않고 테스트 대상을 자유롭게 탐색하면서 테스트를 수행하는 방법입니다. 이전에 진행한 테스트 결과 등 테스트 대상에 대한 이해를 바탕으로 다양한 시나리오를 테스트하여 예상치 못한 버그를 발견하는 데 효과적입니다.

테스트 설계와 실행이 동시에 이루어지는 테스트로 주로 아래 경우에 진행합니다.

  • 테스트 대상에 대한 이해가 부족한 경우
  • 테스트 대상이 복잡하거나 예측하기 어려운 경우
  • 새로운 기술이나 플랫폼을 테스트하는 경우 
  • 제품에 대해 신속하게 학습해야 할 때

탐색적 테스트는 공식적 테스팅을 보완하는 측면에서 활용하거나 병행하는 것이 효과적이고

페어와이즈 기법, 등가분할, 경계값 분석, 결정 테이블 테스팅 등 대부분의 기법을 활용할 수 있으나 최소한의 기법만을 사용해야 합니다.

 

2. Steps

1. Create a Bug Taxonomy(버그 유형 분류)

  • 지난 프로젝트에서 발견된 일반적인 결함 유형을 분류합니다.
  • 결함이나 버그의 근본 원인 분석을 수행합니다.
  • 리스크를 파악하고 애플리케이션을 테스트할 아이디어를 개발합니다.

2. Test Charter

  • 테스트 차터는 다음 사항을 포함해야 합니다.
    1. 무엇을 테스트할 것인지?
    2. 어떻게 테스트할 것인지?
    3. 주의해야할 것은 무었인지?
  • 테스트 아이디어는 탐색적 테스트의 시작점입니다.
  • 테스트 차터는 최종 사용자가 시스템을 어떻게 사용할 수 있는지 확인하는데 도움을 줍니다.

3. Time Box(시간제한)

  • 이 방법에는 최소 90분 동안 함께 작업하는 한 쌍의 테스터가 필요합니다.
  • 90분 세션 동안 테스트가 중단된 시간은 없어야 합니다.
  • 시간 제한은 45분으로 연장 또는 단축할 수 있습니다.
  • 이 세션은 테스터가 시스템의 응답에 반응하고 올바른 결과를 준비하도록 권장합니다.

4. Review Results(결과 검토)

  • 결함 평가
  • 테스트 진행하면서 배운 점
  • 커버리지 영역 분석

5. Debriefing(보고)

  • 출력 결과를 편집
  • 결과를 차터와 비교
  • 추가 테스트가 필요한지 확인

 

3. Advantages

  • 다른 테스트 기법으로 찾아낼 수 없는 버그를 찾을 수 있습니다. 
  • 테스트 대상에 대한 이해를 높이는 데 도움이 됩니다.
  • 테스트 대상의 새로운 사용 사례를 발견할 수 있습니다.

 

4. Disadvantages

  • 테스터의 기술에 따라 효과가 달라집니다.
  • 테스터의 도메인 지식에 의해 테스트 범위가 제한됩니다.
  • 긴 시간의 테스트에 적합하지 않습니다.

 

5. Exploratory Testing VS Scripted Testing

탐색적 테스팅(Exploratory Testing) 스크립트 기반 테스팅(Scripted Testing)
테스트가 설계됨과 동시에 수행, 테스트 기록은 필수 사항이 아님 테스트가 먼저 설계되고 기록, 나중에 다른 테스터가 이를 수행
테스트는 아이디어를 반영하고 생각을 발전시키는 방향으로 수행 테스트는 미리 착안된 생각에 따라 수행
테스트 설계를 향상 테스트의 실행을 관리
프로젝트 기간 내내 테스트 계획/설계와 실행을 반복 테스트 실행을 시작하기 전에 테스트 케이스를 작성
테스트 문서 작성, 검토에 대한 필요성을 최소화(테스트 진행에 상대적으로 많은 노력투자 가능) 테스트 문서 작성, 검토에 많은 공수가 소요되어 테스트의 효율성이 감소하는 경우 발생
테스터간의(특성, 능력) 차이를 최대한 활용하는 노력 테스터간의(특성, 능력) 차이를 제거하는 노력
테스터가 테스트 설계 테스터가 아닌 사람이 테스트를 설계할 수 있음
점진적, 주기적인 테스팅 수행 한번에 완벽하게 테스팅 수행

 

참고

https://www.guru99.com/exploratory-testing.html

http://www.jidum.com/jidums/view.do?jidumId=586