티스토리 뷰

디버깅/테스트하기

통합 모듈 및 UI별 테스트 수행 및 검증

통합 테스트 계획대로 통합 모듈 및 인터페이스별로 테스트를 수행하고 검증할 수 있다.

통합 테스트

단위 테스트를 충분히 수행한다 하여도 모든 설계 오류를 발견할 수는 없다. 여러 모듈이 통합되어 완전한 프로그램을 구성하며 모듈 간에 영향을 미친다. 모듈 각각이 완전하게 보여도 이들 모듈을 통합하면 서로 불일치하여 발생하는 오류, 전역변수에 대한 부정확한 사용, 한 모듈에서의 작은 오차가 여러 모듈에서 축적되어 큰 문제를 유발하는 등 여러 가지 오류들이 발생할 수 있다. 결국 모듈들을 통합한 후 프로그램에 대한 테스트를 반드 시 수행하여야 하는데 이를 통합 테스트(integration testing)라고 한다. 따라서 통합 테스트 단계에서는 각각의 모듈들을 통합하여 통합된 컴포넌트 간의 인터페 이스와 상호작용상의 오류를 발견하는 작업을 수행하며, 블랙박스 테스트(black-box test) 를 통해 확인한다. 이 때 기본 설계 단계에서 준비된 테스트 케이스를 사용하여 진행되며, 일반적으로 개발자가 진행한다.

통합 테스트에서 비점진적으로(non-incremental) 프로그램을 통합하여 테스트를 수행하려 는 경향이 많다. 비점진적 통합이란, 모듈을 한 번에 전부 통합하는 것을 말한다. 비점진 적으로 프로그램을 테스트하면 오류를 발견한 후 오류 위치를 확정하기 매우 어렵다. 때 문에 통합 테스트에서 우선 일부분 모듈을 통합하여 테스트한 후 또 다른 일부분 모듈을 통합시켜 통합 테스트를 수행하는 점진적 방법으로 모듈을 통합하여 전체 모듈이 모두 통 합될 때까지 통합 테스트를 수행하는 것이 바람직하다. 이런 테스트 방법을 점진적 (incremental) 통합 테스트라고 한다. 점진적 통합 테스트에서는 하향식 통합 테스트 또는 상향식 통합 테스트 방법을 이용할 수 있다.

하향식 통합

프로그램 제어 구조에서 상위 모듈부터 통합하는 것을 말한다. 하향식 통합은 깊이우선 (depth-first)과 넓이우선(breadth-first) 방법으로 나눌 수 있다. 보통 깊이우선 통합의 기본 원칙은 한 모듈을 선택한 후 우선 그 모듈의 하위 모듈을 통합한다. 명령어 처리 모듈을 먼저 구현하고 시험한다. 명령어 처리 모듈은 시스템 구조도의 최상 위에 있는 모듈을 말한다. 다음 단계의 모듈이 구현, 시험 완료되었으면 추가한다. 이렇게 계속 하위층의 모듈로 내려가면서 테스트하고 추가하여 전체 시스템이 모두 결합될 때까지 계속한다

상향식 통합

상향식 통합은 하위 모듈로부터 점진적으로 통합하는 것을 말한다. 시스템 구조도의 최하 위층에 있는 모듈을 먼저 구현하고 테스트한다. 다음에는 바로 위층에 있는 모듈을 테스 트하여 부시스템으로 만든다. 상위 모듈을 계속 더해 나가면 전체 시스템이 통합된다.

연쇄식 통합

특수하고 중요한 기능을 수행하는 최소 모듈 집합을 먼저 구현한다. 보조적인 기능의 모 듈은 나중에 구현하여 테스트한 후 계속 추가한다. 즉, 기본 기능을 수행하는 모듈들의 최 소단위(thread)로부터 시작하는데 이는 처음에 선택되는 스레드는 시스템의 중요 기능을 담당하는 부분이며 이렇게 구축된 스레드에 다른 모듈을 추가시켜 나가는 형식인 것이다. 선택된 모듈들은 시스템 구조도의 다른 층에 있을 수도 있고 작은 서브트리(sub-tree)일 수도 있다. 처음부터 독립된 여러 개의 주요 스레드를 구축시켜 나가다가 완전한 시스템 으로 합하는 방법도 모두 가능하다. 연쇄식 통합의 장점은 앞에서도 언급했지만 초기에 시스템의 골격을 보여주고 사용자의 의견을 빨리 받아볼 수 있으며 초판은 시스템의 주요 기능만 수행하도록 만들고 추후 부 가적인 기능을 첨부할 수 있는 것이 장점이다.

UI/UX Design

UI/UX 환경 분석

UI/UX 계획 수립

사용자 리서치

UI/UX 요구 분석

UI/UX 콘셉트 기획

UI 아키텍쳐 설계

댓글
댓글쓰기 폼