소프트웨어 테스트란?
소포트웨어 테스트는 '소프트웨어 내에 존재하지만 드러나지 않고 숨어 있는 오류를 발견할 목적으로 개발 과정에서 생성되는 문서나 프로그램에 있는 오류를 여러 기술을 이용해 검출하는 작업'이라고 할수있다.
소프트웨어 테스트의 목표
소프트웨어 테스트이 목표는 작게 보면 ' 원시 코드 속에 남아 있는 오류를 발견하는 것' 이다. 또 '결함이 생기지 않도록 예방하는 것'이다. 그러나 큰 의미에서 보면 '개발된 소프트웨어가 고객의 요구를 만족하는지 확인해 주는 것' 이다. 즉 개발자와 고객에게 사용하기에 충분한 소프트웨어임을 보여주는 것이다. 그러러면 실행된 프로그램의 결과가 명세서의 내용과 일치함을 보여야 한다. 결과적으로 테스트의 목표는 '개발된 소프트웨어에 신뢰성을 높여주는 것' 이라 할 수 있다.
테스트에서 결함과 관련된 용어
■ 오류
- 오류(error) ㄴㄴ 소프트웨어 개발자에 의해 생기는 실수로 결함의 원인이 된다.
■ 결함
- 결함(defect,bug,fault)은 오류에 의해 프로그램이 완전치 못한 것으로, 고장의 원인이 된다. 주로 프로그램에 ㅣㄹ요없는 정보를 포함하거나 ㅣㄹ요한 정보가 없는 경우이다. 결함으로 인해 프로그램이 실행중에 멈추거나 예외 처리 모듈이 작동될 수 있다. 또 시스템이 작동 불능 상태에 빠질 수 있다.
■ 고장,실패,문제,장애
-고장,실패(failure),문제(problem), 장애 등은 시스템에 요구사항대로 작동하지 않는 것을 말한다. 요구분석명세서가 잘못되었거나, 이 명세서에 요구사항이 충분히 반영되지 않았거나, 기술적으로 불가능한 요구 사항이 포함된 경우와 같은 결함에 의해 발생한다. 그러나 모든 결함이 반드시 실패를 유발하지는 않는다.
테스트 절차
1. 테스트 계획
- 테스트 계획 단계에서는 테스트 목표를 정의하고, 테스트 대상 및 범위를 결정하며, 테스트 계획서를 작성하고 검토한다.그러므로 테스트 요구사항 정의서, 테스트 계획서와 같은 산출물이 결과물로 생성된다.
2.테스트 케이스 설계
- 테스트 케이스 설계 단계에서는 다음과 같이 테스트 케이스 설계 기법을 정의하고 , 결정된 설계 기법에 따른 테스트 케이스를 도출한다. 그리고 도출된 테스트 케이스에 입력 값으로 사용할 원시 데이터를 작성한다. 그러므로 결과물로 테스트 케이스 명세서, 테스트 설계서, 테스트 절차서가 생성된다.
3.테스트 실행 및 측정
- 테스트 실행 및 측정 단계에서는 테스트 환경을 구축하고 도출된 테스트 케이스를 이용해 테스트를 실시한다. 그리고 테스트 실형 결과를 문서화 한다.
4.테스트 결과 분석
- 테스트가 끝나면 계획 대비 결과를 비교 ,분석 한다. 그리고 테스트 결과에 대한 보고서를 작성한다.
5.오류 추적 및 수정
- 오류 추적 및 수정 단계에서는 테스트 결과 어디에서, 어떤 종류의 오류가 발생했는지 확인하고 수정한다.
'전공 > 소프트웨어공학' 카테고리의 다른 글
[소프트웨어 공학] 시각에 따른 테스트 (0) | 2022.06.19 |
---|---|
[소프트웨어 공학] 소프트웨어 테스트의 분류 (0) | 2022.06.19 |
[소프트웨어 공학] 행위 패턴(Behavioral Patterns) (0) | 2022.06.19 |
[소프트웨어 공학] 구조 패턴(Structural Patterns) (0) | 2022.06.19 |
[소프트웨어 공학] 생성(Creational) 패턴 (0) | 2022.06.19 |