728x90
- 테스트를 하려면?
- 분석 : 개발 산출물 (테스트 베이시스) 검토
- 설계 : 테스트 조건에 맞게 테스트케이스 작성
- 구현 : 테스트 프로시저 구성
- 테스트 설계란?
- 정의 : TC와 테스트 데이터 등을 구상하고 구체적으로 명세화하는 활동
- 간단하게 말하면 TC를 만드는 것
- 최소 개수로, 가능한 많은 결함을, 빠짐없이 테스트할 수 있도록
- 커버리지 확보가 필요함 (보장성)
- TC 관련 용어
- 테스트 케이스 (TC : Test Case) : 입력값과 기대결과로 구성된 최소 단위
- 테스트 수트 (Test Suite) : 여러 개 TC 단순 묶음
- TC와 TS를 혼동하여 사용하는 테스트 조직이 많음
- 테스트 프로시져 (Test Procedure) : TC를 효율적인 테스트 순서로 구성
- 테스트 시나리오 (Test Scenario) : TC를 사용자 조작 순서로 구성
- 테스트 설계 기법의 분류
- 공식
- 명세 기반 : 개발 명세를 분석해서 TC 설계 (커버리지 제한적)
- 구조 기반 : 코드/설계 등의 SW 구현 정보 기반 (정량적인 커버리지 측정 가능)
- 비공식 (기법이라기 보다는 접근법)
- 경험 기반 : 유사SW 경험과 지식으로 TC 도출
- 명세 기반
- 동등 분할 (등가 분할) : 클래스로 분류하여 각 클래스의 대표 TC 도출
- 경계값 분석 : 범위가 있는 경우 경계값 위주로 TC 도출
- 조합 테스팅 : 두 요소간의 상호작용을 고려하여 TC 도출 (allpairs 등의 툴 사용)
- 결정 테이블 테스팅 : 논리적인 명세서를 원인/결과로 나누어 TC 도출
- 상태전이 테스팅 : 이벤트, 액션, 가드, 상태전이 사이의 관계를 검증
- 유즈케이스 테스팅 : 유즈케이스 모델링을 TC로 도출
- 구조 기반
- 커버리지 기반 테스트 : SW테스트가 얼마나 충분한지 확인
- 구문 (SC) : 프로그램 내의 모든 명령문을 한번 이상 수행
- 결정 (DC) : 프로그램 내의 각 분기들을 한번 이상 수행
- 조건 (CC) : 조건들이 참이 되는 경우와 거짓이 되는 경우를 모두 수행
- 조건/결정 (C/DC) : 조건+결정. 각 커버리지의 단점 보완
- 변형 조건/결정 (MC/DC) : 각 개별 조건식이 다른 조건식에 무관하게 전체 조건식 결과에 영향을 주는 경우
- 최소 TC = 개별조건수 + 1
- 다중 조건 (MCC) : 모든 개별 조건식의 모든 조합을 한 번 이상 수행
- 최소 TC = 2개별조건수
- 제어흐름 테스트 : 제어 흐름도를 사용하여 TC 도출 (SC, DC 달성)
- 데이터흐름 테스트 : 변수들이 값을 할당받은 지점에 따라 테스트 경로 도출
- 기본경로 테스트 : 독립적인 경로를 모두 수행하여 잠재적인 오류 검출
- 최소비교 테스트 : MC/DC 기반으로 최적화된 분기 도출
- MC/DC는 다른 분기점을 고려하지 않음
- 최소비교는 다른 분기점까지 고려함
- 경험 기반
- 에러 추정 : 자주 발견되는 결함 유형을 DB화하여 TC 도출
- 체크리스트 : 수행해야 할 테스트 목록 나열 (커버리지 없음)
- 탐색적 테스팅 : 테스트하면서 제품을 파악하고 테스트 설계 (보완 후 반복 작업)
- 사전 정보 없거나 시간이 부족한 경우
- 테스터 개인의 지적 능력이 중요함
- 산출물 작성보다 테스트 실행 자체에 집중
- 결함 집중 원리에 충실한다 (결함은 집중되어 있다)
- 필요한 절차와 원칙이 있다 (개인 역량 의존에 의한 완성도 저하 방지)
- 테스트 차터 : 중점 테스트 항목
- 테스트 노트 : 테스트한 기록을 남김
- 타임 박싱 : 테스트 집중력을 높이기 위해 실행 시간 제한
- 회고 : 소감 및 개선안 공유
- 분류 트리 기법 : 명세 없는 경우 테스트 아이디어 시각화
728x90
'이론' 카테고리의 다른 글
웹사이트 테스트시 빼먹기 쉬운 항목 (0) | 2013.08.05 |
---|---|
서버 성능테스트 (0) | 2013.07.02 |
[용어] 성능테스팅, 부하테스팅, 스트레스테스팅 (0) | 2009.06.07 |
[용어] 드라이버, 스텁 (0) | 2009.06.07 |
[용어] 테스트베이시스, 테스트수트, 테스트프로시저, 테스트시나리오 (0) | 2009.06.07 |