'분류 전체보기'에 해당되는 글 33건


정의 및 원리

테스트 아이템의 입력 또는 출력이 여러 영역(Partition)으로 구분되는 경우에 적용
동일한 영역 내에서는 어떠한 값을 선택해도 항상 같은 결과를 기대할 수 있다는 것을 전제로함(테스팅이 가정 하에 실행됨)
실무에서는 잘 활용되지 않는다(테스트 강도가 약함)


 

예제를 통해 알아 보겠습니다.

 

  • 시스템명 : 교과목 학점 평가 시스템

  • 요구사항

    • 시험점수(75%) + 과제 점수(25%) = 총점으로 학점 계산(A, B, C, D)

    • 시험 점수 입력 : 0 ~ 75점

    • 과제 점수 입력 : 0 ~ 25 점

    • "정수"만 입력 가능

    • 범위를 벗어나거나 잘못된 입력은 "경고 메시지"출력

총 점

학점

70 <= ~

A 학점

50 <= ~ < 70

B 학점

30 <= ~ < 50

C 학점

~ < 30

D 학점

 


절차
  • TD1 : 기능 셋 식별 

    • 교과목 학점 평가 시스템 

 

  • TD2 : 테스트 컨디션 도출
    • 유효한 입력 파티션 (Input Valid Partition) 
      • TCOND1 : 0 <= 시험 점수 <=75 
      • TCOND2 : 0 <= 과제 점수 <=25 
    • 비 유효한 입력 파티션(Input Invalid Partition) 
      • TCOND3 : 시험 점수 < 0 
      • TCOND4 : 시험 점수 > 75
      • TCOND5 : 과제 점수 < 0 
      • TCOND6 : 과제 점수 > 25 
    • 비 유효한 입력 파티션 (Input Invalid Partition)
      • TCOND7 : 시험 점수 = 실수 값(소수점 포함) 
      • TCOND8 : 시험 점수 = 영문자
      • TCOND9 : 시험 점수 = 특수 문자
      • TCOND10 : 과제 점수 = 실수 값(소수점 포함)
      • TCOND11 : 과제 점수 = 영문자
      • TCOND12 : 과제 점수 = 특수 문자 
    • 유효한 입력 파티션(Input Valid Partition)
      • TCOND13 : 70 <= 총 점 <= 100, 'A'
      • TCOND14 : 50 <= 총 점 < 70, 'B'
      • TCOND15 : 30 <= 총 점 < 50, 'C'
      • TCOND16 : 0 <= 총 점 < 30, 'D'
      • TCOND17 : 총 점 > 100, '경고 메세지' 출력
      • TCOND18 : 총 점 < 0, '경고 메세지' 출력
      • TCOND19 : 총 점 = 정수 이외의 값, '경고 메세지'출력
    • 비 유효한 입력 파티션 (Input Invalid Partition)
      • TCOND20 : 결과 = 'E'
      • TCOND21 : 결과 = 'A'
      • TCOND22 : 결과 = "null"

 

  • TD3 : 테스트 커버리지 아이템 도출 
    • 테스트 커버리지 아이템 = 식별 된 파티션 = 테스트 컨디션

 

  • TD4 : 테스트 케이스 도출
    • Option A : One to One (테스트 케이스 = 하나의 테스트 커버리지 아이템 커버)
테스트 케이스 입력(시험 점수) 입력(과제 점수) 총 점 테스트 커버리지 아이템 기대 결과
1 60 15 75 1 A
2 -10 15 5 3 경고 메세지 출력
3 93 15 108 4 경고 메세지 출력
4 40 20 60 2 B
5 40 -15 25 5 경고 메세지 출력
6 40 47 87 6 경고 메세지 출력
7 60.5 15 75.5 7 경고 메세지 출력
8 q 15 15 8 경고 메세지 출력
9 $ 15 15 9 경고 메세지 출력
10 40 20.23 60.23 10 경고 메세지 출력
11 40 g 40 11 경고 메세지 출력
12 40 @ 40 12 경고 메세지 출력
13 60 20 80 13 A
14 44 22 66 14 B
15 32 13 45 15 C
16 12 5 17 16 D
17 80 60 140 17 경고 메세지 출력
18 -10 -10 -20 18 경고 메세지 출력
19 47.3 @ 47.3 19 경고 메세지 출력
20 -10 0 -10 20 경고 메세지 출력
21 100 10 110 21 경고 메세지 출력
22 null null null 22 경고 메세지 출력

 

  • TD4 : 테스트 케이스 도출
    • Option A : Minimized (테스트 케이스 = 여러 테스트 커버리지 아이템을 동시에 커버)
테스트 케이스 입력(시험 점수) 입력(과제 점수) 총 점 테스트 커버리지 아이템 기대 결과
1 60 20 80 1, 2, 13 A
2 50 16 66 1, 2, 14 B
3 35 10 45 1, 2, 15 C
4 19 8 27 1, 2, 16 D
5 -10 -15 -25 3, 5, 18, 20 경고 메세지 출력
6 93 47 140 4, 6, 17, 21 경고 메세지 출력
7 60.5 20.23 80.73 7, 10, 13, 19 경고 메세지 출력
8 q g - 8, 11, 19 경고 메세지 출력
9 $ @ - 9, 12, 19 경고 메세지 출력
10 -10 5 -5 3, 2, 18, 20 경고 메세지 출력
11 100 10 110 4, 2, 17, 21 경고 메세지 출력
12 null null null 19, 22 경고 메세지 출력

 

  • TD5 : 테스트 셋 구성(경고 메세지가 출력 되는 케이스는 수작업 테스트)
    • Option A : One to One
      • TS1 : 수작업 테스트 - Test Case 2, 3, 5, 6, 7, 8, 9, 10, 11, 12, 17, 18, 19, 20, 21
      • TS2 : 자동 테스트 - Test Case 1, 4, 13, 14, 15, 16
    • Option B : Minimized
      • TS3 : 수작업 테스트 - Test Case 5, 6, 7, 8, 9, 10, 11, 12
      • TS4 : 자동 테스트 - Test Case 1, 2, 3, 4

 

  • TD6 : 테스트 프로시저 도출
    • Option A : One to One
      • TP1 : 수작업 테스트 - TS1과 동일
      • TP2 : 자동 테스트 - TS2와 동일
    • Option B : Minimized
      • TP3 : 수작업 테스트 - TS3과 동일
      • TP4 : 자동 테스트 - TS4와 동일

 

커버리지 = (커버 된 파티션 / 전체 파티션) * 100%

 


 

테스트 컨디션은 4가지 방법으로 생성

INVALID는 경험이나, 개발자에게 따로 문의

 

VALID INVALID
INPUT TEST BASED ON SPECIFIED INPUTS TEST BASED ON NON-SPECIFIED INPUTS
OUTPUT TEST BASED ON SPECIFIED OUTPUTS TEST BASED ON NON-SPECIFIED OUTPUTS

 

[기술적 관점]

 

시험 점수와 과제 점수는 정수 - 컴퓨터 메모리에서 어떻게 다뤄지는가?
선언된 변수의 처리는 CPU와 언어에 따라 다름

 

시험 점수와 과제 점수가 정수라면 추가 파티션 도출 가능
예를 들어 16비트 정수라면 아래와 같은 범위를 확인 할 수있음

 

 

동등 분할은 특정 결함 유형을 대상으로 하지 않음


테스트 대상에 대하여 기대 결과와 다른 결과를 테스트 케이스가 커버할 수 있도록 설계하는 것이 결함 발견에 도움이 됨
파티션을 동일한 특성의 클래스로 제대로 분할하지 않은 경우에 주의해야 함


동등 분할은 유효하지 않은 파티션에 대한 아이디어 도출을 강제함 > 테스트 대상이 잘못된 입력을 제대로 처리하지 못하는 결함 발견에 도움이 됨


일반적으로 입력 값과 그에 따라 변환되는 출력 값으로 기능적 결함을 발견


모든 테스트 유형과 테스트 레벨에 적용 가능


동일한 방식으로 처리될 것으로 기대하나 상호 작용하지 않는 데이터 세트에 적합


경계값 분석과 함께 사용될 때 가장 강력한 기법

 


 

블로그 이미지

정신차려이각박한세상속에서

,