제목: 분류 트리를 이용한 테스트 케이스 설계(Test Case Design Using Classification Trees)
저지: Matthias Grochtmann, Daimler-Benz AG, 독일
문서유형: 컨퍼런스 페이퍼(총 11페이지), 1994년
Daimler-Benz 연구소에서 개발한 블랙 박스(즉, 기능 명세서 기반) 테스트 케이스 설계 기법인 분류 트리 방법(The classification-tree method)과 이 방법을 지원하는 그래픽 에디터인 CTE (classification-tree editor)를 소개한 자료
분류 트리 방법(The Classification-Tree Method)
- Ostrand와 Balcer가 정의한 카테고리 분할 방법(the category-partition method)의 개념을 활용 및 개선한 방법
- 테스트 대상 항목(a test object)의 입력 도메인(the input domain)을 테스트에서 고려할 가치가 있다고 판단되는 다양한 측면(aspects)에서 검토하고, 각 측면에 대해 입력 도메인을 클래스(Classes)로 분할하는 분류(classifications)가 이루어진다. 분류 작업을 통해 생성된 클래스들은 더 상세한 하위 클래스들로 다시 분류 될 수도 있다. 이렇게 분류된 클래스들은 트리 형태로 그래픽하게 표현되고, 트리 상의 각각의 분류 그룹에 속하는 클래스들을 조합하여 테스트 케이스를 만든다. 즉, 분류 트리를 기반으로 조합 테이블이 생성되고 이 테이블 상의 클래스들을 선택하여 테스트 케이스를 만든다.
- 분류 트리 방법 적용에 있어 가장 중요한 정보 소스는 테스트 대상 항목의 기능 명세서(the functional specification of the given test object)이다.
분류 트리 방법의 주요 단계(steps)
1. 테스트 대상 항목 선정(Selecting test objects): 큰 규모의 실제 시스템을 하나의 분류 트리로 표현하면 트리가 너무 커져 다루기 힘들므로 테스트 대상 시스템을 독립성을 띄는(즉, 따로 떼어서 개별적으로 테스트가 가능한) 여러 개의 테스트 대상 항목(test objects) 분할한다.
2. 분류 트리 설계(Designing a classification tree): 이전 단계에서 분할된 각 테스트 대상 항목에 대해서 필요 시 되는 모든 측면을 고려하여 분류 트리를 구축한다.
3. 분류 클래스들을 조합하여 테스트 케이스 생성(Combining classes to form test cases): 각 테스트 대상 항목의 가장 중요한 테스트 조건(test situations)이 커버되도록 테스트 케이스를 도출한다.
분류 트리 방법 적용 예
- 테스트 대상 항목: 여러 다른 물체의 크기를 결정하는 컴퓨터 비전 시스템
- 입력 데이터: 다양한 빌딩 블록
- 테스트에서 고려할 측면(aspects): 블록의 크기(size), 색깔(colour), 형태(shape)
이 예제를 분류 트리 방법에 따라 작업한 결과물인 분류 클래스들이 아래 분류 트리(classification tree)에 그래픽하게 표현되어 있다.
- 색깔 측면의 분류에서 입력 도메인을 빨강 블록, 녹색 블록, 파랑 블록으로 분할
- 형태 측면의 분류는 입력 도메인을 원형(circular) 블록, 삼각형(triangular) 블록, 사각형(square) 블록으로 분할. 삼각형 클래스(the triangle class)에 대해 ‘삼각형의 형태(the shape of triangle)’라는 측면을 추가적으로 고려함(즉, 이등변 삼각형, 부등변 삼각형, 정삼각형의 세 가지 하위 클래스로 다시 분할됨)
- 분류 트리에서 파생된 조합 테이블(the combination table)에서 각 측면의 분류된 클래스들을 조합하여 테스트 케이스를 도출한다(선택된 클래스를 마킹하여 표시). 예를 들어 아래 그림에서 세 번째 테스트 케이스는 작은(small) 파랑색(blue)의 이등변 삼각형(a isosceles triangle)을 테스트 한다. 동일한 분류 그룹에 속한 클래스들은 상호 배타적(disjoint)이므로 한 분류 그룹에서 단 한 개의 클래스만이 테스트 케이스로 선택된다.
분류 트리 에디터(The Classification-Tree Editor: CTE)
- 분류 트리 방법의 분류 트리 설계와 조합 테이블을 통한 테스트 케이스 생성 작업을 지원하는 도구
- 아래 그림처럼 CTE 에디터의 상단 윈도우에 사용자가 분류 트리를 그리는 영역이 있고 하단 윈도우에서 분류 트리에 상응하는 조합 테이블(the combination table)을 제공해 사용자가 마킹을 하여 테스트 케이스를 도출하도록 해준다.
- 분류 트리에 변경이 발생되면 관련된 조합 테이블도 그에 따라 자동으로 업데이트되며 테이블 엔트리의 구문 일관성(the syntactical consistency of table entries) 체킹도 이루어진다.
- 분류 트리, 조합 테이블, 설계된 테스트 케이스 텍스트 버전을 프린트 하는 기능을 제공하므로 테스트 문서화를 간편하게 해 준다.
- CTE는 VMS와 OSF/Motif 환경의 VAX 스테이션에서 C 언어로 구현된 인하우스(사내) 도구이다(Ultrix, HP UX, SUN/Solaris 버전도 지원).
'테스트케이스설계기법별 > 명세 기반' 카테고리의 다른 글
문서요약 - 의사결정표 테스팅 by Hassan (1) | 2020.03.09 |
---|---|
영상자료 - 유한 상태 기계 테스팅 by Udacity (0) | 2020.03.05 |
상태 전이 테스팅 기법 (0) | 2020.03.02 |
영상자료 - 분류 트리 방법의 이론과 TESSY 툴 by Hitex (0) | 2020.02.27 |
문서요약 - 동등 클래스 분할 by Williams (0) | 2020.02.20 |