[테스트] 1. 테스트의 종류 및 개요

2024. 4. 21. 19:05cs및 소프트스킬/테스트

728x90
반응형
SMALL

1. 애플리케이션 테스트

  - 애플리케이션에 잠재되어 있는 결함을 찾아내는 일련의 행위 or 절차

  - 확인 방법

  • 개발된 소프트웨어가 고객의 요구사항을 만족하는지 확인(Validation)
  • 소프트웨어가 기능을 정확히 수행하는지 검증(Verification)

 

2. 애플리케이션 테스트 기본 원리

  - 파레토 법칙(Pareto Principle) : 애플리케이션의 20% 해당하는 코드에서 전체 결함의 80%가 발견된다는 법칙

  - 살충제 패러독스(Pesticide Paradox) : 동일한 테스트 케이스로 동일한 테스트를 반복하면 더 이상 결함이 발견되지 않는 현상

  - 오류-부재의 궤변(Absence of Errors Fallacy) : 소프트웨어의 결함을 모두 제거해도 사용자의 요구사항을 만족 시키지 못하면 해당 소프트웨어는 품질이 높다고 말할 수 없는 것

 

 

3. 프로그램 실행 여부에 따른 테스트

  - 정적 테스트

    => 프로그램 실행 않고, 명세서 or 소스 코드 대상으로 분석 테스트

    => 소스 코드에 대한 코딩 표준, 코딩 스타일, 코드 복잡도, 남은 결함 등 발견하기 위해 사용

    => 워크스루 / 인스팩션 / 코드 검사 등 있음

 

  - 동적 테스트

     => 프로그램을 실행하여 오류 찾는 테스트

     => 소프트웨어의 개발의 모든 단계에서 테스트 수행

     => 블랙박스 테스트 / 화이트박스 테스트 가 있음

 

 

4. 시각의 따른 테스트

  - 검증(Verfication) 테스트 : 개발자의 시각에서 제품 생산 과정 테스트, 제품 명세서대로 완성 됐는지 테스트 진행

  - 확인(Validation) 테스트 : 사용자의 시작에서 생산된 제품의 결과 테스트, 사용자가 요구한 대로 제품 완성 or 제품 정상인지 동작하는 테스트

 

 

5. 목적에 따른 테스트

  - 회복(Recovery) 테스트 : 시스템에 여러 가지 결함 부여, 실패하도록 한 후 올바르게 복구 되는지 확인하는 테스트

  - 안전(Security) 테스트 : 시스템에 설치된 시스템 보호 도구가 불법적 침입으로 시스템 보호 되는지 확인하는 테스트

  - 강도(Stress) 테스트 : 시스템에 과도한 정보량, 빈도 등 부과 -> 과부하에도 S/W가 정상적으로 실행 확인 테스트

  - 성능(Performance) 테스트 : S/W 실시간 성능 or 전체적인 효율성 진단하는 테스트 (S/W 응답시간, 처리량 확인)

  - 구조(Structure) 테스트 : S/W 내부의 논리적 경로, 소스 코드의 복잡도 등 평가하는 테스트

  - 회귀(Regression) 테스트 : 소프트웨어의 변경 or 수정된 코드에 새로운 결함이 없음을 확인하는 테스트

  - 병행(Parallel) 테스트 : 변경된 S/W와 기존 S/W에 동일한 데이터를 입력하여 결과를 비교하는 테스트

 

 

6. 워크스루(WaltThorugh)

  - 개발 산출물 작성 중 산출물 검토하고 결함 찾아내는 기법

  - 작성자 요청에 의해 실행함, 중간 산출물 대상으로 함

  - 비형식적 동료 검토 방법

 

 

7. 인스팩션(Inspection)

  - 개발 산출물 작성 완료시 실행, 소프트웨어 명세서 만족하는지 검증하는 기법

  - 코딩 전 소요 인력 2배 이상 필요하지만, 추후 개발 비용 감소 및 결과적 품질 비용 감축 등 목적

 

 

728x90
반응형
LIST