[SW테스팅]D-1 Syllabus 4.4 경험 기반 테스트 기법

ACAI BERRY DEVELOVER·2023년 8월 22일
0
post-thumbnail

✔︎ 경험기반 테스트 기법은

  • 테스터의 기술, 역량, 직관
  • 유사한 애플리케이션과 기술에 대한 경험

을 기반으로 테스트케이스를 도출한다.

  • 이 기법은 체계적인 다른 기법으로는 쉽게 찾아내기 어려운 테스트를 식별하는 데 도움이 된다.
  • 테스터의 접근 방식과 경험에 따라 이 기법으로 달성하는 커버리지와 효과성은 매우 다양하다.
  • 이 기법을 사용할 경우 커버리지를 평가하기 어려울 수 있으며 측정이 불가능할 수도 있다.

✔️4.4.1 오류추정

  • 과거에 유사시스템에서 발생했던 오류, 결함, 장애 발생의 경험을 토대로 그 결함을 공격하는 테스트
  • 오류추정은 TC를 설계할 수 있음, 체크리스트도 가능, 스크립트 기반도 가능

✔️4.4.2 탐색적 테스팅

  • 비공식 테스트를 테스트 실행 중에 동적으로 설꼐, 실행, 기록, 평가한다.
  • 테스트 결과는 컴포넌트나 시스템에 대해 더 많이 학습, 더 많은 테스트가 필요한 영역에 대한 테스트를 작성하는 데 활용.
  • 탐색적 테스트는 때로 세션 기반 테스팅을 사용하여 활동을 구성.
  • 세션 기반 테스팅에서는 타임박스 동안 수행한다.
  • 테스터는 테스트 목적이 포함된 테스트 차터를 활용해 테스팅 방향을 설정한다.
  • 테스터는 테스트 세션 시트에 수행 단계와 발견 사항을 기록한다.
  • 명세가 충분하지 않거나 상당한 시간 압박이 있을 때 유용.
  • 공식적인 테스팅 기법을 보완하는데도 유용.
  • 탐색적 테스팅은 반응적 테스트 전략과 밀접관련이 있다.
  • 탐색적 테스팅은 블랙박스, 화이트박스, 경험 기반기법과 통합하여 사용 가능.

탐색적 테스트는 TC를 만들지 않음, 차터(검증주제등이 들어있음)가 있음.타임박스(세션에도 있고 차터에도 있음)가 있음.반복(세션)도 있음 반복 중간에 브리핑도 있음.충분한 휴식시간이 있어야 세션에 몰입할 수 있음(탐색적테스트는 차터,타임박스,세션,브리핑,브레이크타임이 있다.)

✔️4.4.3 체크리스트 기반 테스팅

  • 체크리스트에 기록된 테스트 컨디션을 커버하기 위해 테스터가 테스트를 설계, 구현, 실행.
  • 분석의 일환으로 테스터는 새로운 체크리스트를 작성하거나 기존 체크리스트를확장할 수 있음.
  • 기능 및 비기능 테스팅을 포함한 다양한 테스트 유형을 지원하기 위해 작성할 수 있다.(리뷰에도 쓰임, 사용성 테스트에서 효과적으로 쓰인다)
  • 체크리스트는 대략적인 지침과 일관성을 제공가능.
  • 체크리스트는 상위 수준으로 작성되기에 실제 테스팅에서 가변성이 있으며 커버리지는 늘어날 수 있으나, 재현가능성은 줄어들 수 있음.

↪효과, 효율 : 효과는 결함을 많이 찾는거고, 효율은 결함을 빠르게 찾는것(둘의 의미가 다르다)

release test때 errorGuessing 테스트를 많이함
에러 추정의 문제점
테스터에 따라 커버리지에 대한 보장성이 주어지지 못할 수도 있다.
-> 테스터의 경험에 따라
네가티브적으로 테스트에 접근하는 것도 중요하다.
테스트케이스를 에러게싱을 이용해 많이 만들어낼 수 있다.
예외사항이나 의도하지 않는 상황에 대해 테스트케이스를 만들어야 한다.
체크리스트와 테이스케이스의 차이
체크리스트는 기대결과만 있다.
체크리스트는 한문장에 기대결과가 다 들어있다.
테스트케이스는 보장성(=커버리지)를 가지고 있다.
체크리스트는 보장성을 주진 않는다.
체크리스트는 숙련된 전문가가 하면 효과적이다.
체크리스트는 작성이 용이하다(빠르다)
체크리스트는 살충제페러독스가 적용되지 않을 가능성이 높다


테스트를 개발한다, 테스트케이스를 설계한다 = TEST IMPLEMENTATION, DEVELOPMENT

4. 테스트 기법의 종류 테스트 설계 기법 특징

테스트 기법은 개발 초기에 기법 적용 가능
테스트 기법은 테스트 보장 수준을 가짐

  • 효과성
  • 강도 조절가능
  • 리스크 기발 테스트와 관련
  • 커버리지와 관련(목표 커버리지 달성 수단으로 사용)

모든 설계기법은 모든 테스트 레벨에서 적용가능하다.

다양한 정황을 이해하여 테스트기법을 선택한다. 시스템 유형 , 법적요구사항, 커버리지 요구사항, 리스크 수준에 따라 어떤 기법을 선택할 지 결정, 중요하게 여겨지는 품질 속성등을 이해, 테스트 목표가 있다.(테스트 계획서에 있음), 명세서가 있으면 블랙박스 없으면 다른거 (경험기반이라던지), 테스터들이 경험이 없을 때등 여러가지가 판단 기준이 될 수 있다. 테크니컬이냐 비즈니스레벨이냐, 개발생명주기모델에 또 따라 (EX- 애자일-탐색적 테스팅) , 모델이 있을때(상태전이모델- 상태전이테스팅, 유즈케이스모델-유즈케이스테스팅, 오라클이 있다면 그에 맞는 테스팅을),

테스트 전략을 잘 분석해 구체적으로 테스트 기법을 적용가능
임의 테스트 케이스 작성보다 결함을 발견할 수 있는 효과적 테스트 작성 가능
TC의 재사용성이 높아짐
테스트 강도와 품질에 대한 통찰을 제공함

테스트지원도구 - 테스트설계도구와 데이터준비도구가 있다.

profile
쓸때 대충 쓰지 말고! 공부하면서 써!

0개의 댓글