Test Design Technique
Specification-based Techniques (명세기반 기법)
- Black box testing, Behavioral testing 라고도 함.
- 요구사항 및 명세서 기반의 테스트
- SW의 내부 구조에 대한 지식은 필요 없음
- 소프트웨어 개발프로세스의 모든 단계에 적용 가능
- 아무리 테스트를 해도 실제로 코드의 얼마가 테스트되었는지는 알 수 없음.
- 완전한 테스팅은 불가함 . 따라서
- 기법 적용을 통해 Random하게 생성된 것보다 효과적 / 효율적인 테스트케이스 도출 가능
- 절차
- 요구사항 또는 명세서 분석
- Valid/Invalid input 선택
- Input에 따른 예상결과 정의
- 테스트 구현 (테스트를 위한 프로그램 , 데이터 준비 등)
- 테스트 수행
- 예상결과와 실제결과 비교하여 테스트 결과 판정
Equivalence Partitioning Testing (동등분할 테스팅)
- 명세서를 기준으로 여러 가능한 Input에 대해 동일한 결과를 갖는 값들을 하나의 equivalence class로 구분하고, 각 class별로 input을 선택하는 테스트
- Domain 분석을 통해 Valid/Invalid class로 decompose하는 것이 핵심
- 적절한 coverage를 만족하면서 체계적으로 테스트케이스 개수를 줄일 수 있음
(positive test + negative test) • Equivalence Partitioning Coverage
Boundary Value Analysis Testing ( 경계값 분석 테스팅 )
Combinatorial Testing (조합 테스팅)
- 모든 조합을 다 테스트하기 현실적으로 불가
- 그래서 pair-wise testing을 많이 씀 (ex. a, b, c → ab, ac, bc)
- testing efficienty, quality 면에서 pair-wise > manual