본문 바로가기

자격증/정보처리기사

애플리케이션 테스트 관리

<소프트웨어 테스트>

사용자가 요구하는 기능과 성능(사용성, 안정성 등)을 만족하는지 확인하고, 숨어있는 소프트웨어 결함(오류)을 찾아내는 활동을 말한다

오류 발견: 잠재된 오류를 발견하고 이를 수정하여 올바른 프로그램을 개발하기 위해

오류 예방: 동료 검토, 워크스루, 인스펙션 등을 통해 사전에 발견해 예방하기 위해

품질 향상: 요구사항 및 기대수준을 만족하도록 반복적인 테스트를 통해 신뢰도를 향상시키기 위해

 

< 소프트웨어 테스트 기본원리 > 

결함 존재 증명 결함은 늘 존재(결함이 없다는 것을 증명할 수 없다) → 따라서 결함을 줄이는 테스트가 필요

완벽한 테스팅은 불가능

초기 집중 조기테스트의 중요성, 요르돈 법칙(눈덩이법칙)

결함 집중 오류의 80%는 전체 모듈 20%내에서 발견되는 파레토 법칙

살충제 패러독스 동일한 테스트 케이스의 반복적 수행은 새로운 결함을 발견할 수 없다

정황 의존성 소프트웨어 성격에 맞는 테스트를 실시(성격에 맞게 각각 다르게)

오류부재의 궤변 오류가 없다고 해도 사용자의 요구사항을 충족시키지 못하면 품질이 높은 것이 아니다

 

<테스트 프로세스>

테스트 계획 → 테스트 분석 및 디자인 → 테스트 케이스 및 시나리오 작성 → 테스트 수행 → 결과 평과 및 리포팅

 

<소트프웨어 테스트 산출물>

-테스트 계획서: 테스트의 목적 및 대상 시스템 파악 등 테스트 수행을 계획한 문서

-테스트 베이시스: 논리적인 케이스로 테스트 설계를 위한 기준이 되는 문서

-테스트 케이스: 테스트를 위한 설계 산출물로 입력값, 조건, 기대 결과로 구성

-테스트 슈트: 시나리오가 포함되지 않은 단순한 테스트 케이스의 모음

-테스트 시나리오: 테스트 되어야 할 기능 및 특징, 상황 등을 작성한 문서

하나의 테스트 시나리오는 하나 또는 여러 개의 테스트 케이스들을 포함할 수 있다

-테스트 스크립트: 테스트 케이스의 실행 순서(절차)를 작성한 문서(=테스트 스텝, 테스트 절차서)

-테스트 결과서: 테서트 결과를 정리한 문서, 결과를 평가하고 리포팅