티스토리 뷰

디버깅/테스트하기

시스템 운영 환경 기반 테스트 수행 및 검증

시스템 테스트 계획대로 시스템 운영과 근접한 환경에서 테스트를 수행하고 검증할 수 있다.

시스템 테스트

소프트웨어는 컴퓨터를 기반으로 하는 시스템 중의 한 요소일 뿐이다. 따라서 소프트웨어 와 다른 시스템 요소(예를 들어 하드웨어, 정보 및 다른 소프트웨어 등)들과 통합하여야 하며 모든 요소들이 적절히 조화를 이루어 시스템의 기능을 만족하는지 확인하는 시스템 테스트(system testing)를 수행하여야 한다.

시스템 테스트에서는 실제 구현된 시스템과 계획된 사양(specifications)을 서로 비교하는 작업이 수행된다. 시스템 테스트는 모듈이 통합된 후 시작된다. 모든 모듈을 통합한 후에, 시스템 레벨의 오류들이 이 테스트 단계를 통해 발견될 수 있다. 시스템 테스트 작업에서 는 시스템의 기능을 시험 확인하고 시스템의 성능이나 기능에 제한이 없는지 확인한다. 시스템 테스트는 개발자와 다른 독립된 테스트 팀에 의해 수행된다.

시스템 테스트는 단위 테스트보다 공식적인 프로세스로 무엇을 테스트하였는지 그리고 어 떤 결과가 나왔는지 기록하고 보관할 필요가 있다. 시스템 테스트에서 발견되는 오류는 단지 개발된 소프트웨어의 오류가 아니고 다른 시스템 요소의 오류일 수도 있다. 때문에 시스템 테스트는 소프트웨어 공학의 범위에 속하지 않는다고 볼 수 있다. 그러나 소프트 웨어 공학에서 이용하고 있는 많은 테스트 기법이 시스템 테스트에도 적용될 수 있다.

복구 테스트

많은 컴퓨터를 기반으로하는 시스템은 복구기능을 갖추어야 한다. 즉, 고장발생시시 스템은 지정된 시간 내에 복구되어야 하며, 경우에 따라서는 결함 허용(fault tolerant) 기 능을 이용하여 고장이 발생하여도 시스템이 정상적으로 작동하여야 한다. 복구 테스트 (recovery test)란 여러 가지 방법으로 소프트웨어를 ‘고장’나게 하여 시스템의 복구 능력 을 확인하는 시스템 테스트이다.

보안 테스트

컴퓨터를 기반으로 하는 시스템은 어느 정도의 보안 기능을 갖추어야 한다. 즉, 역할에 따 라 시스템 사용자들은 지정된 기능만 사용할 수 있어야 하며 이를 위해 지정된 정보에만 접근할 수 있도록 하여야 한다. 또한 보안 테스트(security test)란 시스템의 보안 기능이 시스템에 대한 ‘불법 침입자’의 침입을 막을 수 있는지 확인하는 시스템 테스트이다.

스트레스 테스트

스트레스 테스트(stress testing)는 비정상적인 상태에서 소프트웨어의 기능고 성능을 테 스트하는 것을 말한다. 예를 들어 시스템이 정상적으로 처리하는 파일 크기가 1MB라고 할 때 파일 크기가 10MB 또는 100MB인 극한 상황을 만들고 소프트웨어 기능과 성능을 테스트하여 그 결과를 확인한다.

성능 테스트

예를 들어 학생에 대한 정보를 검색하려고 할 때 시스템이 2초 이내에 반응하여야 하나 5초 이상이 걸린다고 하면 사용자의 업무 능력을 감퇴시킨다. 성능 테스트(performance testing)란 시스템이 통합된 상태에서 시스템의 수행 성능에 대한 테스트이다. 성능에 대 한 테스트는 초기 단계인 단위 테스트에서부터 시작되지만 진정한 성능 테스트는 모든 시 스템의 구성 요소를 통합하고 충분한 데이터를 입력한 후에만 가능하다.

UI/UX Design

UI/UX 환경 분석

UI/UX 계획 수립

사용자 리서치

UI/UX 요구 분석

UI/UX 콘셉트 기획

UI 아키텍쳐 설계

댓글
댓글쓰기 폼