뷰티풀 테스팅 2장 정리 - 이해관계자?

쥐도리·2023년 1월 24일
0
post-thumbnail

2장 뷰티풀테스팅은 이해관계자를 만족시킨다.

한 줄 요약

만족스러운 제품을 위해 테스트 하는 것이 아니라,
이해관계자를 만족시키기 위해 테스트 하는 것이다.


내용 정리

좋은 테스트?

  • 단순 테스트 → 버그를 찾아낸다
  • 아름다운 테스트 → 조직 믿음 부여 or 영감을 준다.

테스트 이해관계자

테스트 관련된 관계자 분류 (내부&외부, 중립&반이해)

  • 테스트 이해관계자? 테스트와 관련된 관계자
  • 테스트 이해관계자 분류
    • 내부 & 외부
      • 내부 이해관계자 : 테스트 업무 수행, 관리하는 사람들
      • 외부 이해관계자 : 그 외(개발자, 관리자, PM, ...)
        => 내&외부 이해관계자는 테스트에 관심이 있다.
    • 목적성
      • 중립 이해관계자 : 규칙 준수 중시
      • 반이해관계자 : 프로젝트 진행에 적대 성향 (문제 없는 시스템 교체시, 기존 사용자)
  • 아름다운 테스팅 첫 번째 단계는 테스트 이해관계자를 파악하는 것

좋은 테스트 3가지 특성

좋은 테스트의 3가지 특성 (효과성, 효율성, 기품)

  1. 효과성 : 중요한 버그 발견 & 일반적 시나리오 속 버그 발견
  2. 효율성 : 초기 단계 버그 발견
  3. 기품 : 데이터 기반 명확한 결과 보고
  • 주의사항
    • 효과성 ≠ 심각한 버그 발견 횟수
    • 효율성 ≠ 시간 대비 버그 발견 횟수
    • 기품 ≠ 눈에 띄지 않는 발견 버그 보고
  • 아름다운 테스팅 두 번째 단계는 이해관계자가 생각하는 목적&기대치 파악

좋은 테스트 - 외부

테스팅에 대한 발견율 지표 & 비용 분석 방법

결함 발견

결함발견율(DDP)=발견된버그발견된버그+릴리즈이후발견버그결함발견율(DDP) = \frac{발견된 버그}{발견된 버그 + 릴리즈 이후 발견 버그 }
  • 프로젝트 별 평균 결함 발견율은 85% 이다. (내부용 프로젝트는 95%)
  • DDP(심각 버그) > DDP(모든 버그) 가 되도록 하라
  • 릴리즈 이후 버그는 상세 분석하고, 개선사항을 기록하라

테스트 비용

ACTB=검출비용+내부장애비용테스트발견버그수ACTB = \frac{검출비용+내부장애비용}{테스트 발견 버그 수}

ACPB=외부장애비용릴리즈후발견버그수ACPB = \frac{외부 장애 비용}{릴리즈 후 발견 버그수}

테스트ROI=(ACPBACTB)×테스트발견버그수검출비용테스트ROI = \frac{(ACPB-ACTB)\times 테스트 발견 버그 수}{검출 비용}

  • 테스팅 비용은 3가지로 분류 된다
    • 검출 비용 : 버그 발견하지 상관 없이 발생하는 테스팅 비용 (품질 리스크 분석, 테스트 환경 구축, ...)
    • 내부 장애 비용 : 순수하게 버그를 발견 관련 비용 (버그 보고, 버그 수정, 확인 테스팅)
    • 외부 장애 비용 : 출시 이후 관리 관련 비용 (CS 지원팀, 유지보수팀 비용)
  • 테스트 ROI 프로젝트별 상이 (25% ~ 3500% 이상)
  • 아름다운 테스팅 세 번째 단계는 효과성 & 효율성 메트립 수립하고 해당 목표 설정

좋은 테스트 - 내부

리그레션 테스팅 자동화 운영에 대한 분석 방법

RTA=자동화반복테스트수동반복테스트+자동화반복테스트RTA = \frac{자동화반복테스트}{수동반복테스트 + 자동화반복테스트}

RRC=커버된리그레션리스크파악된리그레션리스크RRC = \frac{커버된 리그레션 리스크}{파악된 리그레션 리스크}

ART=수동리그레션테스트시간자동리그레션테스트시간수동리그레션테스트시간ART = \frac{수동 리그레션테스트 시간-자동리그레션테스트시간}{수동리그레션테스트시간}


  • 수동 리그레션 테스팅 특징 (장기적 활동 시 부정적)
    • 단기간 내 결함 발견율 ↑
    • But 단순하고, 비용 ↑, 테스트로 인한 오류 발생률 ↑ , 테스트 의욕 ↓
  • 리그레션 테스트 자동화 운영 조건
    • 기존대비 위험도가 유지되거나 낮춰져야 한다.
    • 테스트 수행속도가 빨라져야 한다.
  • 리그레션 테스트 자동화는 결코 100%가 될 수없지만 평균 90% 달성한다
  • 애자일 방법론이 리그레션 가속화는 필수적 (테스트 수행 ↑ → 개발 생산성 ↑ 직결)

  • 아름다운 테스팅 네 번째 단계는 내부 관점에서 테스팅 목적과 기대치 설정
    ++ 아름다운 테스팅에는 테스팅의 기품(성취도)도 고려해야 한다.

아름다운 테스팅 정리

1. 테스트 이해관계자 파악하기
2. 이해관계자가 생각하는 목적&기대치 파악
3. 효과성 & 효율성 메트립 수립하고 해당 목표 설정
4. 내부 관점에서 테스팅 목적과 기대치 설정


정리

기억에 남는 문장

  • 효과적인 테스트는 많은 버그를 찾는게 아니라 중요한 영역 속 버그를 찾는 것.
  • 효율적인 테스트는 빠른 시간 내 버그를 찾는 게 아니라, 프로젝트 초기에 버그를 찾는 것
  • 기품적인 테스트는 눈에 띄지 않는 버그 탐색 보고 하는 게 아니라, 리스크 기반 명확한 결과 보고하는 것

배운 것

  • 테스트는 단순히 수행 달성을 위하는 것이 아니라, 이해관계자를 만족시켜야 한다.
  • 테스팅에 있어서 짧은 시간 내에 버그를 많이 찾는게 중요한게 아니다.
    중요한 버그를 찾는 것, 프로젝트 초기에 버그를 찾는 것, 명확한 보고를 하는게 중요하다.

참고도서

Adam Goucher, ⌜뷰티풀 테스팅⌟, 지앤선, 2011
profile
해보고, 정리하고, 돌아보자

0개의 댓글