2022. 11. 23. 05:23
목표
- 오류 추정을 설명할 수 있다
- 탐색적 테스팅을 설명할 수 있다
- 체크리스트 기반 테스팅을 설명할 수 있다
1. 오류 추정(= 결함을 추정한다), 오류/결함 및 장애 발생을 예측하는 기술
접근법 - 테스터의 지식과 경험 또는 결함 및 장애 데이터를 기반으로, 발생 가능한 오류/결함/장애 목록을 작성하고, 장애와 그것의 원인이 되는 결함을 노출하는 테스트를 설계한다.
2. 탐색적 테스팅(경험기반 테스트에서 가장 중요!!)
- 비공식(사전에 정의되지 않은, 테케를 미리 만들어놓지 않은) 테스트를 테스트 실행 중에 동적으로 설계/실행/기록/평가한다
+ 명세기반기법에서는 테케를 미리 만들어 놓는다 - 세션 기반 테스팅을 사용하여 활동을 구성한다. 탐색적 테스팅을 정해진 시한(time-box)동안 수행한다. 제한시간동안 몰입하여 테스트를 수행한다
- 첫번째 세션의 테스트 결과는 컴포넌트나 시스템에 대해 더 많이 학습하고, 더 많은 테스트가 필요한 영역에 대한 테스트를 작성하는 데 활용한다
- 테스트 차터 : 테스트 목적이 포함된 문서이다. 이를 기반으로 테스팅 방향을 설정한다. 명세 기반(블랙박스) 기법의 테스트 컨디션과 유사하다.
- 테스트 세션 시트 : 수행 단계와 발견 사항을 기록한 문서이다. 명세 기반(블랙박스) 기법의 테스트 로그와 유사하다.
- 명세가 충분하지 않거나 적은 경우 또는 테스팅에 상당한 시간적 압박이 있을 때 매우 유용하며, 다른 공식적인 테스팅 기법을 보완하는 데도 유용하다
3. 체크리스트 기반 테스팅(엑셀로 작성될 확률이 높다)
- 체크리스트에 기록된 테스트 컨디션을 커버하기 위해 테스터가 테스트를 설계/구현/실행한다
- 체크리스트 : 경험, 사용자에게 무엇이 중요한지에 대한 지식 또는 소프트웨어가 실패하는 이유와 방법에 대한 이해를 기반으로 작성한다. 기능 및 비기능 테스팅을 포함한 다양한 테스트 유형을 지원하기 위해 작성한다.
- 구체적인 테케가 없는 경우, 대략적인 지침과 일관성을 제공한다
- 상위 수준의 체크리스트는 커버리지는 높일 수 있겠지만, 재현 가능성이 줄어들 수 있다
테스트 기법의 선택
- 일부 기법은 특정 상황과 테스트 레벨이 더 적합한 반면, 모든 테스트 레벨에 적합한 기법도 있다
기법 선택 시 고려 사항
- 컴포넌트나 시스템의 복잡도
- 규제 기준, 고객 또는 계약 요구사항
- 리스크 수준과 유형 ( 리스크 수준이 높을 수록 강한 기법을 사용한다)
- 사용 가능한 문서
- 테스터의 지식과 역량
- 사용 가능 도구
- 시간, 예산
- 소프트웨어 개발 수명주기 모델
- 예상되는 결함 유형