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

[SW테스팅] 테스트 설계 기법의 종류

반나무 2021. 4. 23. 13:43

블랙박스 기법 vs 화이트박스 기법

 

블랙박스 기법 (-> 명세 기반, 경험 기반 기법) - 완성 제품

  • 테스트 대상의 내부구조를 참조하지 않고 테스트 베이스 그리고 개발자와 테스터, 사용자들의 경험을 바탕으로 기능적 혹은 비기능적 테스트 케이스를 도출하고 선택하는 방법

화이트박스 기법(-> 구조 기반 기법) - 소스 대상

  • 컴포넌트 또는 소프트웨어의 구조를 중심으로 테스트 케이스를 도출

테스트 설계의 근원을 기준

  • 명세 기반 기법-블랙박스
    • 테스트 대상에 관한 공식적/비공식적 모델(명세)사용
    • 모델로부터 테스트 케이스를 체계적으로 도출
  • 구조 기반 기법-화이트박스
    • SW코드나 설계 등 구조를 보여주는 정보로 부터 테스트 케이스 도출
    • 작성한 테스트 케이스로부터 커버리지를 측정할 수 있으며, 커버리지를 높이기 위해 테스트 케이스 쳬계적으로 추가할 수 있다.
  • 경험 기반 기법-탐색적테스트
    • 테스터, 개발자, 사용자 등의 지식 활용
    • 발생 가능한 결함과 그 분포 등에 대한 지식 활용
    • 문서화 필요하다.

명세 기반 기법

  • 동등 분할(Equivalence partitioning)
  • 경계값 분석(Boundary value analysis)
  • 조합 테스팅(Parwise testing)
  • 결정 테이블 테스팅(Decision table testing)
  • 상태전이 테스팅(State transition testing)
  • 유즈케이스 테스팅(Use case testing)

동등 분할

대표값을 선택해 테스트 케이스를 도출하는 방법

동일한 입력에 대해 항상 동일한 결과를 갖도록 클래스 구분

 

적용 방법

  • 주어진 시스템 정보를 분석해 입/출력 영역을 유사한 특징을 가진 클래스로 분할
  • 분할된 클래스에서 각 클래스를 대표하는 테스트 케이스 도출
  • 모든 Valid equivalence class(유효)가 커버될 때까지 테스트 케이스 생성
  • 모든 Invalid equivalence class가 커버될 때 까지 테스트 케이스 생성

경계값 분석

  • 동등 분할의 경계에서 결함이 발견될 확률이 높기 때문에 결함을 예방하기 위해 경계값까지 포함하여 테스트
  • 분할 영역의 최대값과 최소값이 그 영역의 경계값
  • 동등 분할과 마찬가지로 모든 테스트 레벨, 테스트 유형에 적용
  • 동등 분할의 확장으로 여겨지며 동일한 방식으로 커버리지 보장

결정 테이블 테스팅

  • 시스템의 동작을 결정하는 비즈니스 규칙을 정의하는 방법
  • 입력 값들이 논리적인 관계(Binary Condition)을 갖는 경우, 입력 값을 원인/결과로 나누어 기술->테스트 케이스 작성
  • 구현이나 명세에 잠재된 오류를 찾는데 효과적으로 이용

특징

  • 테이블 분석을 통해 중복, 발생 불가능한 상황, 모순이 생기는 상황을 제외시키고 나머지의 결정(Decision)과 액선(Action)조합
  • 좋은 Test Data선택을 위해, 경계값 또는 동등 분할 기법 사용
  • 불가능한 Rule을 식별 하는 것은 Test설계 단계에서 나올 수도, 나오지 않을 수도 있다. -> 시스템 설계에 의존적

 

반응형