컴퓨터공학2학년/SW테스팅

[SW테스팅] 경험 기반 기법(Experience-based)

반나무 2021. 5. 10. 01:07

경험 기반 테스팅

  • 이전에 테스터가 다루었던 유사 어플이나 기술에서의 경험, 직관, 테스터의 기술능력으로 부터 테스트 케이스 추출
  • 공식적인이 아닌 특별한 테스트 케이스를 찾아내고 실행하는데 유용 -> 공식적인 기법과 같이 사용해여 효과적임
  • 경험에 따라 효율성 및 효과성의 정도가 매우 달라진다. -> 일관성이 낮아짐
  • 테스트 케이스를 문서화한다.
  • 에러 추정(Error guessing)
  • 탐색적 테스팅(Exploratory Testing)

탐색적 테스팅 기법

탐색적 테스팅 : 기법이 아닌 접근법

  • 테스트 케이스 작성 시간을 최소화하고 테스트 엔지니어의 발견적인(heuristic) 지적능력을 최대한 활용하여 테스트 수행
  • 에드혹, 게릴라, 직관적 테스팅과 유사한 개념
  • 테스트를 먼저 작성하지 않고, 테스트 대상 제품을 실행하면서 익숙해지는 동시에 테스트를 설계하고 테스트를 계획한다.
    • 테스트 차터를 기반으로 수행(60~120분 동안 몰입해서 수행)
    • 제한된 시간(time-boxing)내에 테스팅의 목적을 정한 후 몰입하여 최소한의 설명 가능한 기록을 남기며 테스트 수행하고, 수행 후 요약보고(debriefing)를 하는것을 강조

탐색적 테스팅

  • 경험적인 요소를 많이 반영하고 있는 체계화된 테스팅 접근법
  • 테스트 케이스 작성(문서화)하는데 들이는 노력을 최소화
  • 테스트 설계와 실행 최대화
  • 점진적 & 주기적 테스팅

탐색적 테스팅의 절차

  • 제품의 목적 식별
  • 기능 식별
  • 잠재적으로 불안정한 부분 식별
  • 각각의 기능 테스트 및 문제점 기록
  • 일관성 검증 테스트 설계 및 기록

탐색적 테스팅의 구성 요소

테스트 차터(test charter)

  • 제품의 어느 부분을 어떻게 테스트하고 어떤 것을 중점적으로 봐야할지 등을 기록한 테스트 명령지
  • 각 세션에 대해 명확환 임무를 설정

테스터가 수행할 내용

  • 정확한 리포팅
  • 유연성 있는 일정 관리
  • 테스트 방향 정정
  • 견고한 테스팅
  • 효율적인 요약 보고

테스트 노트(test note)

  • 테스트 실행과 동시에 계획, 설계, 테스트 케이스 작성 -> 노트화 한다.
  • 테스트 기록 및 발견 특이사항과 실행시간 등 기재 -> 테스트 케이스

내용

  • 테스트한 제품에 대한 노트 및 기록
  • 발견한 결함과 장애에 대한 노트 및 기록
  • 어떻게 테스트하였는지를 기술하는 요약된 문서

타임 박싱(time boxing) ( 60~120분 )

  • 테스트 집중력을 높이기 위해 테스트 시간을 제한
  • 테스트 시간을 제한하면 집중력이 높아지며, 테스트 일정 수립도 쉽다.

회고(요약보고 - debriefing)

  • 테스트 중 발견했던 결함고 ㅏ이슈사항에 대해 보고
  • 테스터의 경험과 지식을 공유
  • 문서화

테스트 케이스 기반 테스팅과 탐색적 테스팅 비교

  • 테스트 제품을 파악해 가면서 테스트 실시
  • 탐색적 테스트는 테스터의 성향에 많이 의존적이다.

리스크 기반 테스팅과 연계한 탐색적 테스팅의 활용


탐색적 테스팅 효과

  • 경험적 테스팅을 체계화 시킬 수 있다.
  • 테스트케이스 작성 시간을 줄여 좀 더 많은 테스트 가능
  • 테스터 또는 테스트 엔지니어의 역량을 강화할 수 있다.
  • 적은 테스트 인력으로 많은 테스트를 수행할 수 있음
  • 명세가 없고 시간 부족인 경우 테스트를 효과적으로 효율적으로 수행할 수 있음

 

반응형