728x90

어플리케이션 테스트

- 테스트 케이스에 따라 요구사항을 만족하는지 검증 vertification, 확인 validation

 

 

 

테스트 구성요소

- 테스트 프로세스 : 정착, 전략, 관리 프로세스

- 테스트 기법 : 분석, 설계, 실행, 자동화 기법

- 테스트 조직 : 관리자, 설계자, 개발자 

- 테스트 문서화 : 계획서, 결과서, 보고서, 결합목록

 

 

 

테스트 원칙

- 결함이 존재함을 밝히는 활동

1. 완벽한 테스트 불가능 : 모든 테스트 케이스를 테스트 할수 없음

2. 결함 집중 : 전체 모듈 중 20%에 80%결함 발생(파레토 법칙)

3. 정황 의존 : 주변 환경, 데이터로 발생

4. 오류 부재 궤변 : 오류가 안생겨도 요구사항 불만족 시 좋은 소프트웨어가 아님

5. 살충제 패러독스 : 동일한 모듈에 동일한 테스트 케이스 시 내성이 생겨 새로운 결함 발견 힘듬 ->테스트 케이스 개선

 

 

 

테스트 종류

1. 테스트 시각에 따른 분류

- 확인 validation 테스트 : 사용자 관점에서 요구사항 충족 확인

- 검증 vertification 테스트 : 개발자 관점에서 명세서 충족 확인

 

2. 실행 유무에 따른 분류

2.1 정적 테스트

 - 실행 없이 코드나 명세서를 분석하는 테스트, 초기 단계서 결함 발견 가능

 - 워크 스루 : 개발자 작업 내용을 절차대로 검사

 - 인스펙션 : 개발된 결과물 평가

2.2 동적 테스트

 - 실행하여 오류 찾는 테스트

 - 화이트 박스 테스트 : 소스 코드 흐름 테스트. 논리적 복잡성 측정하는 기초 경로 검사와 제어구조 검사

  * 제어 구조 검사 : 조건 검사, 루프 검사, 데이터 흐름 검사

 - 블랙박스 테스트 : 기능 동작 여부 확인. 경계값 분석, 동치 분할 검사, 원인효과 그래프 검사, 오류 예측 검사

  * 동치 분할 검사 : 올바른 입력과 잘못된 입력에 대한 테스트 케이스를 균등하게 사용하는 검사

 

3. 테스트에 따른 분류

3.1 명세 기반 테스트

 - 명세를 이용해 테스트 케이스 작성

 - 동등 분할 검사, 경계값 분석 검사

3.2 구조 기반 테스트

 - 소프트웨어 논리 흐름에 따라 테스트 케이스 작성

 - 구문 기반, 조건 기반

3.3 경험 기반 테스트

 - 테스터 경험에 의존하는 테스트

 - 체크 리스트, 에러 추정

300x250

+ Recent posts