1. 테스트의 개요
가. 테스트의 정의
-코드 실행 오류 검사 및 개발 프로세스 전반에 걸쳐 생산되는 문서를 검토하여 잠재 오류를 발견하는 기법
나. 테스트의 특징
-소프트웨어 잠재 오류 발견
-최소 시간과 최소 노력으로 오류 발견
-소프트웨어 품질을 높이기 위해 테스트 계획 수립 및 오류 발생 가능성이 높은 효율적, 효과적인 설계 필요
2. 테스트의 원리
가. 테스트의 원리 (발완초 집살정오)
테스트 원리 | 설명 | 테스트 방안 |
결함 존재 증명 | -테스트은 결함 증명 -SW 완전성 증명 불가 |
-결함 발견에 초점 |
완벽한 테스트 불가 | -모든 경우 테스팅 불가 -효율적 테스트 필요 |
-동등분할, 경계값 분석 등 효율적 테스트 수행 |
개발 초기 테스트 효율적 | -조기 결함 발견 -수정 시 수정대상 대폭 감소 |
-결함 확산 초기 방지를 위해 조기 결함 제거 |
결함 집중 | -파레토 법칙 -다수 결함, 소수 원인 |
-소수 원인 분석으로 연관 결함 제거 |
살충제 패러독스 | -동일 테스트 반복 시 신규 결함 발견 불가 | -지속적 Test Case 개발 |
정황에 의존 | -테스트는 정황에 따라 다르게 진행 | -특성별 테스트 차별화 -Back/Front End, Client |
오류 부재의 궤변 | -사용자 요구와 기대에 부응하지 못해 사용성이 떨어지는 소프트웨어의 결함 제로(오류 부재)는 무의미 | -테스트 전 품질 확보 (요구사항 만족) -코드 검사, 보안 체크리스트 등 활용 |
나. 테스트의 원리 (추가)
구분 | 특징 | 설명 |
테스트 이전 계획 수립 | 활동 전 계획 수립 | -테스트에 대한 수행, 통제, 검증 계획은 계획 단계에 수립하고 테스트 데이터는 분서과 설계에서 개발 |
효과적인 테스트 데이터 선정 | 모든 상황 테스트 불가 | -오류 발견 가능성이 높은 최소의 테스트 데이터 선정 필요 |
독립적인 3자 수행 | 개발자가 직접 테스트 불가 | -전문적인 테스트 지식을 갖춘 독립적인 소프트웨어 품질 보증 그룹에 의해 테스트를 수행 |
생명주기 전반 | 개발과정 문서 검토 프로그램 실행 |
-프로그램 실행에 기초한 테스트 포함, 개발 과정에서 생산되는 모든 문서에 대한 검토 포함 |
'나의 서재 > 22. 소프트웨어 공학 기본원리' 카테고리의 다른 글
15.2 정적 테스트 (0) | 2021.12.19 |
---|---|
15.1 테스트 분류 (0) | 2021.12.19 |
14.1 팬인(Fan-in) 및 팬아웃(Fan-out) (0) | 2021.12.18 |
14. 모듈 설계 (0) | 2021.12.18 |
13.3 Template Method 패턴 (0) | 2021.12.15 |
댓글