Page 204 고등학교 프로그래밍 교과서
P. 204










4 프로그램 테스트



학습목표 •프로그램을 테스트하기 위한 다양한 방법들을 설명할 수 있다.
•구현한 프로그램을 대상으로 단위 테스트, 통합 테스트, 시스템 테스트를 수행할 수
있다.



소프트웨어 개발 단계별 비중 프로그램 테스트는 소프트웨어의 품질을 보증하는 중요한 단계로 실무에서는 프
소프트웨어 개발 과정을 3단계로 로젝트를 개발하는 전체의 노력 중에서 약 40% 비중을 차지한다고 한다. 테스트의
구분하였을 때 각 과정에서 소요되
는 시간적 노력의 비중은 분석 및 설 종류에는 독립된 모듈 자체의 완전성을 검증하는 단위 테스트, 모듈과 모듈과의 결
계 과정 40%, 구현 20%, 테스트
40%로 나눈다. 합을 검증하는 통합 테스트, 통합된 시스템 전체를 검증하는 시스템 테스트가 있다.


1 단위 테스트에 대해 알아보자
하나의 프로젝트에는 수많은 단위 프로그램들이 유기적으로 결합되어 각각 요구

되는 기능을 수행하고 있다. 이러한 단위 프로그램들을 모듈이라고 하며 전체 프로젝
트를 구성하는 부품에 해당한다. 그러므로 모듈 단위에서의 오류를 제거하는 것은

테스트의 첫 번째 관문이며 각 모듈에게 주어진 기능을 정확하게 수행하고 있는지
충분히 검증해야 한다.
단위 테스트 단계에서 고려해야 할 항목들은 다음과 같다.


독립 변수
변수가 선언된 구역이나 함수 내부에
서 독립적으로 사용되는 변수이다.
파일의 입출력 형식,
매개 변수 버퍼와 레코드, 종료
함수와 함수 사이에서 자료를 주고 조건 등의 정확성
받기 위해 사용하는 변수이다.


예외 처리 자료의 형식, 초기화,
소스 코드 상에는 문제가 없으나 실 변수의 속성이나 오버플로우,
제 실행 중인 환경에서 발생할 수 있 매개 변수의 정확성 언더플로우 등 자료
는 예기치 못한 오류를 처리한다. 구조의 정확성
단위 테스트
단계의 고려 사항





비정상적 상황에 루프 및 연산자,
대한 예외 및 오류 경계값에 대한 검증 등
처리의 정확성 논리 구조의 정확성








202 Ⅲ. 프로그래밍 설계와 구현





(책)2015프로그래밍-교과서3차심의본 본문.indb 202 2017-09-05 오후 4:16:51
   199   200   201   202   203   204   205   206   207   208   209